2017-09-23 54 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"); 
}