0
我有一個ArrayList<Cell> RM = new ArrayList<Cell>() ;
檢查是否已arralist包含Excel的單元格的值
其中RM=[aaa,bbb]
,並在那裏aaa
和bbb
是從Excel一些細胞文件 我用這個代碼來獲取單元格的值到數組列表。
Row row = sheet.getRow(1);
Iterator<Cell> cells1 = row.cellIterator();
while(cells1.hasNext()) {
Cell cell = cells1.next();
if (Cell.CELL_TYPE_STRING==cell.getCellType()) {
RM.add(cell);
}
}
然後,我試圖查看arraylist是否包含aaa或bbb,但它不能識別該命令。的System.out.println(RM)示出了正確的結果[AAA,BBB],但如果添加一個if(包含)條件它不會:
if (RM.contains("aaa")) {
System.out.println("ok"); }
您的列表包含'Cell'類型,並且您正在檢查'String'。當然,這不會讓你「真實」。嘗試測試一些帶有「aaa」值的'Cell'類型。 –
如果你在你的數組列表中也使用了泛型,那麼你應該這樣做:'ArrayList RM = new ArrayList();'現在如果你試圖運行你的代碼,你會得到一個錯誤,重新使用錯誤的對象類型進行比較 –
|
@ Mike'Pomax'Kamermans。不,'contains()'會給編譯器帶來錯誤。 'contains'方法使用'Object'作爲參數。 –