如何在Java中迭代特定类型的对象的ArrayList

时间:2017-03-28 03:14:34

标签: java arraylist types

我正在尝试迭代废物对象的ArrayList myWaste。

这些废物中的一些属于"包装类型,来自包装类,以及类型"包装"需要计算,并且需要返回计数。

我已尝试过每个循环但我没有太多运气:

int count = 0;
for (Waste packaging : myWaste){
    count += 1;
}
return count;

2 个答案:

答案 0 :(得分:2)

试试这个:

int count = 0;
for(myWaste mw : myWaste)
   if(mw instanceof Packaging)
      count++;

或者如果您想尝试使用java8 +的lambdas:

int count = myWaste.stream().filter(myWaste -> myWaste instanceof Packaging).count();

答案 1 :(得分:1)

如果我没有错,请试试这个:

int count = 0;
for (Waste packaging : myWaste){
    if (packaging instanceof Packaging) {
        count += 1;
    }
}
return count;