簡體   English   中英

Java中2D數組的實際大小(2D數組的填充區域)

[英]The real size of a 2D Array, (Filled area of 2D array), in Java

我在做作業時遇到問題,希望能找到幫助。

我必須將文本文件讀入2D int數組。 2D數組的寬度固定為5,並且永遠不會改變。 但是,數組的高度可能會根據文本文件的長度而變化。

我必須從40x5數組開始; 任何超過40行的文件都是不可接受的,但是少於40行的文件是可以的。 因此,我可能只填充數組的X行(X <= 40)。

我必須計算每列的平均值,因此我需要計算一列中有多少個元素。 有什么辦法做到這一點? 或者在知道X是什么之后,是否可以將原始數組(包含所有數據)的大小更改為Xx5?

示例輸入文件:

034 080 055 078 045
060 100 056 078 078
070 010 066 078 056
034 009 077 078 020
045 040 088 078 055

輸出應為:

48.6 47.8 68.4 78.0 50.8

我不建議對這樣的動態擴展矩陣使用普通數組。 我建議閱讀List&ArrayList文檔以獲得良好的實現。

從Java文檔開始: [ArrayList is a] resizable-array implementation of the List interface.

實際上,這是Java對C天不斷定義的數組限制的解決方案。

您需要做的是計算每個單獨列的總和(簡單;您不需要保留整個狀態,只需保持每一列的運行總數)加上行數即可。 鑒於此,計算每一列的平均值應該很容易。 您只需一次讀取一次即可完成所有這些操作,並且您的解決方案應該能夠處理任何長度的文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM