我有一个对象列表,一个对象的示例是:
255, "Ben Nevis", "Highland", 1344.5, 56.796849, -5.003525
列表中有很多对象,我希望它打印出其中包含单词“Ben”的所有对象,但我不确定如何执行此操作,并且作为对象中的第二个字段可以有多个名称。
List<Mountains> list = Mountains.readMountains();
Scanner input = new Scanner(System.in);
System.out.println("Please enter a Mountain name: ");
String search = "Ben"
if (list.contains(search)){
System.out.println("true");
}
else{
System.out.println("no");
}
最佳答案
您必须迭代列表中的每个条目,然后检查 Name
是否属性(字符串)包含您的搜索词:
for(Mountains m:list){
if(m.getName().contains(search)){
System.out.println(m);
}
}
这假设可以使用 getName()
访问山脉的名称。 .
在当前代码中,您检查(使用 contains
)是否有 Mountains
列表对象包含 String
值为 "Ben"
的对象这永远不会是真的。
关于java - 搜索特定对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43522494/