我有以下代码:
List<int> intList = new ArrayList<int>();
for (int index = 0; index < ints.length; index++)
{
intList.add(ints[index]);
}
它给了我一个错误...
Syntax error on token "int", Dimensions expected after this token
错误发生在以 List
开头的行上。有人可以解释为什么我收到错误吗?
Java 中的泛型不适用于 int
中的基元类型。您可能应该使用包装器类型,例如 Integer
:
List<Integer> ints = ...
并且,要访问 List
,您需要使用 ints.get(index)
.
您只能在<>
部分中使用 Object 类型,而您尝试使用基元类型。试试这个...
List<Integer> intList = new ArrayList<Integer>();
然后,您需要使用 intList.get(index)
和 intList.set(index,value)
访问这些值(并且intList.add(value)
就像您尝试的那样)
你应该使用 Integer 而不是 int,因为列表需要对象而不是基元类型。 但您仍然可以将 int 类型的元素添加到整数列表中
您可以使用 Eclipse Collections 中提供的基元集合。Eclipse 集合对所有原语都有List
、Set
、Bag
和Map
。基元集合中的元素作为基元进行维护,并且不会发生装箱。
您可以像这样初始化 IntList:
MutableIntList intList = IntLists.mutable.empty();
注意:我是 Eclipse Collection 的贡献者。