我有以下代碼。 String[] sep2=strAdder;
編譯器建議將sep2更改爲String或將strAdder的類型更改爲String []。我對此感到困惑。我認爲它應該工作爲什麼字符串數組並沒有作爲第一個字符串索引
String strAdder = null;
while ((strLine = br.readLine()) != null) {
if (strLine.contains(">>")) {
String[] sep1 = strLine.split(">>");
String[] sep2 = strAdder;
dd = null;
}
if (!(strLine.contains(">>"))) {
strAdder.concat(strLine.toString());
}
i++;
}
in.close();
首先'sep2'只是該if語句範圍內的局部變量。它不是讀取,只是設置,所以你可能只是刪除該行,並擺脫其他問題,即:'sep2'是一個String數組,而'strAdder'只是一個String。他們的類型是不相容的,這就是爲什麼你不能在那一行做這個任務。最後但並非最不重要,你想用strAdder做什麼? – tiguchi
@unluddite then String [] sep1 = strLine.split(「>>」)爲什麼它正在工作。 strLine是一個字符串,sep1如何將其作爲第一個索引 –
'String.split()'返回一個'String []'類型,這就是爲什麼這是工作。 –