2017-09-23 48 views
-4

我有我的主類此代碼:我如何可以比較字符串ArrayList的全對象

System.out.println("pls enter the id that you are looking for"); 
String id = keyboard.nextLine(); 

for(int k=0;k<elements.size();k++){ 

    elements.Hotell.get_Idset().equals(id); 

} 

我要搜索一個ID爲我的ArrayList那充滿對象。

首先,我從鍵盤上讀取了id(String),並且想要與我的ArrayList進行比較,以查找此id是否存在。

而且該方法get_Idset()屬於Hotell類, 所以我得到一個錯誤:

cannot find symbol variable Hotell

我沒有找到答案。

ArrayList

ArrayList<Object> elements = new ArrayList<Object>(); 
+1

你希望與什麼elements.Hotell?元素是一個ArrayList,它沒有這樣的成員。 –

回答

2

你需要做以下修改:

  • 使列表的Hotellelements,而不是Object情況下,如: ArrayList<Hotell> elements = new ArrayList<Hotell>();
  • 迭代列表,並使用get_Idset()(假設它返回一個字符串)來獲取並比較ID

下面是例子:

ArrayList<Hotell> elements = new ArrayList<Hotell>(); //Your list 
String id = keyboard.nextLine(); 
Optional<String> element = elements.stream() 
     .filter(e -> e.get_Idset().equals(id)) 
     .findFirst(); 
if(element.isPresent()){ 
    System.out.println("Element found"); 
}else{ 
    System.out.println("Element not found"); 
}