我正在製作一個循環整數列表(簡單,杜)的程序。問題是,當我循環並嘗試將整數列表轉換爲字符串列表時,出現java.lang.String cannot be cast to java.lang.Integer
錯誤。是的,字符串到整數錯誤,而不是整數到字符串錯誤。我不知道爲什麼會發生這種情況,我需要幫助解決這個問題。循環遍歷整數列表時發生Java Cast錯誤?
我如何定義列表:
public List<Integer> killsList;
killsList = new ArrayList<Integer>();
我如何調用該方法:
gc.setList("playerKills", gc.getStringListFromIntegerList(plugin.killsList));
我如何添加值:
plugin.killsList.add(1);
在for (Integer num : list) {
線出現的錯誤。 ..
郵編:
public ArrayList<String> getStringListFromIntegerList(List<Integer> list) {
ArrayList<String> newList = new ArrayList<String>();
plugin.console.sendMessage(list.toString());
for (Integer num : list) {
newList.add(String.valueOf(num));
plugin.console.sendMessage(String.valueOf(num));
}
return newList;
}
例子:
public List<Integer> killsList;
killsList = new ArrayList<Integer>();
plugin.killsList.add(kills);
gc.setList("playerKills", gc.getStringListFromIntegerList(plugin.killsList));
public ArrayList<String> getStringListFromIntegerList(List<Integer> list) {
ArrayList<String> newList = new ArrayList<String>();
plugin.console.sendMessage(list.toString());
for (Integer num : list) {
newList.add(String.valueOf(num));
plugin.console.sendMessage(String.valueOf(num));
}
return newList;
}
我打算假設問題出現在for循環語句(?)中。嘗試將num編入一個字符串,然後將其轉換爲所述循環內的整數。因爲鑄造失敗是有意義的,所以你要求一個整數來保存一個列表的值。 –
SomeStudent
如果我試圖讓'num'成爲一個字符串,那麼我得到一個編譯錯誤,希望我把它改回到整數。我以前通過這樣的列表(通常是字符串列表),沒有問題。 – AngryCupcake274
這篇文章:http://stackoverflow.com/questions/18524/java-best-way-of-converting-listinteger-to-liststring?rq=1基本上有我使用的確切代碼,但沒有得到錯誤。 – AngryCupcake274