在 cells1 中,我有值列表,即[4000,4001,4002,4003],并且 cells2 具有[1234,4000]。我试图找到重复和独特的价值,但即使它每次去其他部分都有重复值。为什么任何代码都错了。
Iterator itr = cells2.iterator();
while(itr.hasNext()){
HSSFCell s = (HSSFCell) itr.next();
boolean sta = cells1.contains(s.getStringCellValue());
if(sta==true){
System.out.println("Dublicate:>>>>"+s.toString());
}else{
System.out.println("unique value:>>>>:"+s.toString());
}
}
}
输出值是:
唯一值:>>>>:1234
唯一值:>>>>:4000 < - 这是错误的输出
答案 0 :(得分:1)
来自您的评论cells1
已ArrayList<Cell>
,因此您致电cells1.contains(s.getStringCellValue());
表示在String
ArrayList
中找不到Cells
的{{1}}这就是它进入其他部分的原因。
最终,您试图在String
中找到Cells
,这是不可能的。
您必须将String
的每个单元格的String
值(表示单元格的ArrayList<Cell>
值)与您必须覆盖的s.getStringCellValue()
进行比较{{1}方法或声明自己的方法。
contains