在 Java 的数组中查找元素

2022-09-01 15:05:35

Java是否有内置函数允许我线性搜索数组中的元素,或者我必须只使用for循环?


答案 1

列表有一种方法,所以你应该能够做到:contains

Arrays.asList(yourArray).contains(yourObject);

警告:这可能不会做你(或我)期望的,请参阅下面的汤姆的评论。


答案 2

使用 Java 8,您可以执行以下操作:

int[] haystack = {1, 2, 3};
int needle = 3;

boolean found = Arrays.stream(haystack).anyMatch(x -> x == needle);

你需要做的

boolean found = Arrays.stream(haystack).anyMatch(x -> needle.equals(x));

如果您正在处理对象。