![](/img/trans.png)
[英]Getting parameters from a text file using Java String.split method
[英]Getting an array from string.split() java
所以我有以下幾點代碼:
while((line = reader.readLine()) != null) {
String[] row = line.split(",");
this.table.add(row);
使用以下內容啟動this.table的地方:
ArrayList table = new ArrayList();
然后,當我試圖在表格中獲得一行時,如下所示:
for(int i=0; i<table.size(); ++i){
for(int j=0; j<table.get(i).length; ++j) {
//some code
}
它(強調get(i).length;並給出一個錯誤,說它找不到符號。符號:length location:class Object。
怎么了? string.split()不返回數組嗎? 如果是,為什么我不能使用任何數組類方法/變量?
謝謝!
ArrayList不是數組列表,它是由數組支持的列表。
但是你可以使用泛型使它成為數組列表。
List<String[]> table = new ArrayList<String[]>();
然后你的代碼應該工作。
你應該使用java泛型
List<String[]> table = new ArrayList<String[]>();
然后你會得到帶有get(i)
調用的String[]
實例。 另請注意使用List
接口聲明表變量。 盡可能使用適合您需要的超級接口,而不是實現類。
此外,從Java 1.5開始,您可以使用更直觀的語法(當然,這假設您使用之前推薦的泛型):
for(String[] processedRow : table){
for(String processedField : processedRow) {
//some code
}
}
您需要輸入清單:
List<String[]> table = new ArrayList<String[]>();
那么java編譯器就會知道String[]
存儲在你的列表中。
ArrayList table = new ArrayList();
// change with:
ArrayList<String[]> table = new ArrayList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.