千萬(wàn)里不及你
2022-05-21 14:00:52
我無(wú)法弄清楚為什么 stringList 的最后一個(gè)值(即 Banana)沒有被打印出來(lái)或存儲(chǔ)在 arrayForTheList 中。給定一個(gè)字符串列表,以相同的順序返回一個(gè)包含相同字符串的數(shù)組list2Array( ["Apple", "Orange", "Banana"] ) -> {"Apple", "Orange", "Banana"}list2Array( ["Red", "Orange", "Yellow"] ) -> {"Red", "Orange", "Yellow"}list2Array( ["Left", "Right", "Forward", "Back"] ) -> {"Left", "Right", "Forward", "Back"}public String[] list2Array(List<String> stringList) { String[] arrayForTheList = new String[(stringList.size())]; for (int i = 0; i < stringList.size() ; i++) { arrayForTheList[i] = stringList.remove(0); System.out.println(arrayForTheList[i]); } return arrayForTheList;}
3 回答

MM們
TA貢獻(xiàn)1886條經(jīng)驗(yàn) 獲得超2個(gè)贊
代替
for (int i = 0; i < stringList.size() ; i++)
到
for (int i = 0; i < arrayForTheList.length ; i++)
請(qǐng)記住,您的代碼清楚List
它作為參數(shù)接收的內(nèi)容。

慕標(biāo)5832272
TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
您不應(yīng)該從List循環(huán)內(nèi)部刪除元素。如果必須,您可以清除List循環(huán)后的內(nèi)容。
for (int i = 0; i < stringList.size() ; i++) {
arrayForTheList[i] = stringList.get(i);
System.out.println(arrayForTheList[i]);
}
stringList.clear();

炎炎設(shè)計(jì)
TA貢獻(xiàn)1808條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以使用toArray()
列表的方法簡(jiǎn)單地實(shí)現(xiàn)這一點(diǎn)。例如:
String[] arrayForTheList = (String[])stringList.toArray();
希望這可以幫助。
添加回答
舉報(bào)
0/150
提交
取消