比较arraylist中的元素与java中的整数值

h43kikqp  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(328)

我已将数据库的内容加载到名为countlist的arraylist中。加载的内容是int类型。我用命令创建了countlist ArrayList countList = new ArrayList(); 现在,我需要检查arraylist的每个内容是否大于3。我写的就像

for(int i=0; i< itemset.size(); i++){
    if(countList.get(i) >= 3)
    {

    }
}

当我简单地编写它时,它显示了二进制运算符“>=”的错误操作数类型。如何完成任务?

pqwbnv8z

pqwbnv8z1#

这个 >= 运算符仅在数字类型上定义,例如 int , double 或者 Integer , Double . 现在, countlist 很可能包含整数(我想是的),但是您编写代码的方式,编译器不能确定。这是因为 ArrayList 可以存储任何类型的对象,包括但不一定 Integer . 有几种方法可以解决这个问题:
a) 您可以将arraylist项强制转换为 Integer ,此时 >= 操作员将工作:

if ( (Integer) countList.get(i) >= 3)

b) 您可以使用泛型来告诉编译器 ArrayList 将只存储 Integer 学生:

ArrayList<Integer> countList = new ArrayList<Integer>();
2skhul33

2skhul332#

for(i=0; i< itemset.size(); i++){
   if (itemset.get(i) > 3) {
      // Do whatever you want here
   }
}

相关问题