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

时间:2013-06-06 01:49:30

标签: java arraylist

我已将数据库的内容加载到名为countList的ArrayList中。加载的内容是int类型。我使用命令

创建了countList

ArrayList countList = new ArrayList();

现在,我需要检查arraylist的每个内容是否大于3。我写的就像

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

    }
}

当我简单地写它时,它显示二进制运算符'&gt; ='的错误操作数类型的错误。如何完成任务?

2 个答案:

答案 0 :(得分:4)

>=运算符仅定义在数字类型上,例如intdoubleIntegerDouble。现在,countlist 可能包含整数(我认为它确实存在),但是编写代码的方式,编译器无法确定。这是因为ArrayList可以存储任何类型的对象,包括但不一定是Integer。有几种方法可以解决这个问题:

a)您可以强制将ArrayList项目投放到Integer,此时>=运算符将起作用:

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

b)您可以使用泛型告诉编译器您的ArrayList只会存储Integer

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

答案 1 :(得分:-1)

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