在Java中我试图在列表中插入相同的Integer,但它不起作用。我的代码:
ArrayList<Integer> list = new ArrayList<Integer>();
for ( int i = 0; i < 5; i++) {
list.add(1);
}
for ( int i = 0;i<5; i++) {
System.out.println(list.indexOf(i));
}
输出: -1 0 -1 -1 -1
答案 0 :(得分:4)
输出正确,因为您正在查找不存在的值0到9的索引,但1
除外,因此它将打印-1
,
打印
-1
0
-1
-1
-1
-1
-1
-1
-1
-1
的Javadoc
返回此列表中第一次出现的指定元素的索引,如果此列表不包含该元素,则返回-1。更正式地,返回最低索引i,使得(o == null?get(i)== null:o.equals(get(i))),如果没有这样的索引,则返回-1。
您的意图可能是
for (int i = 0; i < 5; i++)
System.out.println(list.get(i));
另一种方法是
list.forEach(System.out::println);