使用ListIterator时,自动拆箱功能似乎无效。
下面的代码引发一个编译时错误,指出“不兼容的类型:无法将对象转换为int”
import java.util.*;
class Input_Array
{
public static void main(String[] args)
{
String x = "36 42 74 98 41 85";
String y[] = x.split(" ");
int p[] = new int [6];
ArrayList<Integer> lst = new ArrayList<>();
int i=0;
for(String v : y)
{
lst.add(Integer.valueOf(v));
}
ListIterator X = lst.listIterator(lst.size());
while(X.hasPrevious())
{
int n=X.previous();
System.out.print(n+" ");
}
System.out.println();
}
}
。
将第18行替换为
int n=(int)X.previous();
看起来效果很好。 Listiterators是否不支持自动拆箱(将对象类型自动转换为原始类型)?