【发布时间】:2018-12-31 23:21:31
【问题描述】:
我有一个数组,里面有一些 integers。我想检查给定的integer 是否在其中。除了使用for 循环逐一检查之外,还有没有办法在java 中使用indexOf 方法? [ -1 如果不在其中,则为索引]
【问题讨论】:
标签: java
我有一个数组,里面有一些 integers。我想检查给定的integer 是否在其中。除了使用for 循环逐一检查之外,还有没有办法在java 中使用indexOf 方法? [ -1 如果不在其中,则为索引]
【问题讨论】:
标签: java
Java 中的数组没有indexOf 方法。您的主要选择是:
Arrays.binarySearch(array, number)
HashSet<Integer> 和contains 方法。【讨论】:
binarySearch 会在两个单独的Integer 实例上针对相同的基础值失败?
int[](这是我的理解),那么没有问题。如果是Integer[],则约定是“如果数组包含多个等于指定对象的元素,则无法保证会找到哪个。”,所以它仍然应该返回一个值是>=0。
Integer 的数组。但这是问题的问题,而不是您的答案;你可以读到“我有一个数组,里面有一些integers。”无论哪种方式。 :-)
for 循环或使用Arrays.binarySearch(array, number)