2014-04-16 52 views
0

我創建了一個類,我想爲這個類創建一些全局數組,以便允許類的所有方法使用它們。 問題是我不知道數組的大小。 大小是基於我使用JAVA代碼讀取的文件。 如何使用從文件接收的信息定義這些數組(全局)?如何從文件中定義給定大小的數組?

**閱讀文件本身並從中檢索信息沒有問題。

謝謝:)

+0

使用'List'通過'ArrayList'代替陣列... –

+0

支持你爲什麼不嘗試添加setter和getter方法*編輯*以及你不會需要,如果你get方法'只使用類中的變量本身 –

+0

你想在你的數組中存儲什麼樣的數據? – Joffrey

回答

1

UPDATE:根據您的意見,我誤解了您的需求。

如果你的問題只是數組聲明,那麼這應該可能解決它。

您可以通過這種方式爲「全局」陣列(*)宣佈你的二維數組:

private MyClass[][] myArray; 

這不會初始化它,但它的申報類型爲MyClass對象的二維數組。

然後,當你開始閱讀文件和你有大小:

int size = /* read the size from the file */; 
myArray = new MyClass[size][size]; 

你想達到什麼目前還不清楚。

如果要動態元素添加到一個數組,你不知道它在初始化時的大小,我會建議你使用ArrayList

ArrayList<SomeClassForYourData> list = new ArrayList<>(); 

添加元素:

list.add(element); 

SomeClassForYourData element = list.get(i); 

鰭:

要在索引i接入元件d結構的大小:

int size = list.size(); 
+0

我希望一次定義數組/矩陣,但數組/矩陣的大小取決於在文件中給予我的信息。例如: 例如: 在其寫入的「n = 3」 文件中,然後我希望將大小定義爲3X3或類似array [n!] [n!]的東西。 問題是,我需要矩陣是全局矩陣,這意味着我必須將它定義在類的頂部。 – user3542266

+0

@ user3542266我編輯了我的答案。 – Joffrey

+0

謝謝你的幫助。 但我的問題是,我在我的類中有很多使用這些全局數組的方法。意思是,如果我在主要方法中定義大小,我將無法通過類的其他方法訪問數組(在分配大小後)。 – user3542266