如何在 Java 中查找列表中的元素?
List 接口扩展了 Collection 接口,表示存储元素序列的集合。列表的用户对元素在列表中插入的位置有相当精确的控制。这些元素可以通过它们的索引访问,并且可以搜索。在 Java 开发人员中,ArrayList 是 List 接口最流行的实现。
在 Java List 中,有几种方法可以查找元素。
使用 indexOf() 方法。 - 如果元素存在,此方法返回元素的索引,否则返回 -1。
使用 contains() 方法。 - 如果元素存在,此方法返回 true,否则返回 false。
遍历列表中的元素,并检查元素是否为所需的元素。
使用流遍历列表中的元素,并过滤出该元素。
在本文中,我们将通过示例介绍上面提到的每种方法。
示例 1
以下示例演示了如何使用 indexOf() 和 contains() 方法在列表中查找元素:
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; public class CollectionsDemo { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Zara"); list.add("Mahnaz"); list.add("Ayan"); System.out.println("List: " + list); String student = "Ayan"; if(list.indexOf(student) != -1) { System.out.println("Ayan is present."); } if(list.contains(student)) { System.out.println("Ayan is present."); } } }
输出
这将产生以下结果:
List: [Zara, Mahnaz, Ayan] Ayan is present. Ayan is present.
示例 2
以下示例演示了如何使用迭代和流在列表中查找元素:
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; public class CollectionsDemo { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Zara"); list.add("Mahnaz"); list.add("Ayan"); System.out.println("List: " + list); String student = "Ayan"; for (String student1 : list) { if(student1 == "Ayan") { System.out.println("Ayan is present."); } } String student2 = list.stream().filter(s -> {return s.equals(student);}).findAny().orElse(null); System.out.println(student2); } }
输出
这将产生以下结果:
List: [Zara, Mahnaz, Ayan] Ayan is present. Ayan
广告