我無法弄清楚為什么 stringList 的最后一個值(即 Banana)沒有被打印出來或存儲在 arrayForTheList 中。給定一個字符串列表,以相同的順序返回一個包含相同字符串的數組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貢獻1886條經驗 獲得超2個贊
代替
for (int i = 0; i < stringList.size() ; i++)
到
for (int i = 0; i < arrayForTheList.length ; i++)
請記住,您的代碼清楚List
它作為參數接收的內容。

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

炎炎設計
TA貢獻1808條經驗 獲得超4個贊
您可以使用toArray()
列表的方法簡單地實現這一點。例如:
String[] arrayForTheList = (String[])stringList.toArray();
希望這可以幫助。
添加回答
舉報
0/150
提交
取消