二进制运算符%的java错误操作数类型
我在练习java,遇到了一些问题
我想学习从Arraylist中移除元素,所以我正在移除几率
public static void arrayLists(){
List<Integer> xlist = new ArrayList<Integer>();
for (int x = 0; x < 10; x ++){
xlist.add(x);
}
for (Iterator<Integer> pointer = xlist.iterator(); pointer.hasNext();){
if (pointer % 2 == 1){
pointer.remove();
}
}
}
为什么不编译?”二进制运算符%'的操作数类型错误
我认为这个问题与列表中的元素是整数有关,而我将它们与int(s)进行比较。有没有办法解决这个问题
# 1 楼答案
替换:
与
# 2 楼答案
应该是:
指针是
Iterator
,不能对其执行%。必须通过调用pointer.next()
在Ierator
的当前位置获取整数# 3 楼答案
更改已完成-
if (pointer.next() % 2 == 1)
.next
将实际返回该对象 公开课考试{输出