一个数组中是否包含某个值

时间:2022-10-13 19:54:17
1.检查数组中是否包含特定值的四种不同方法
1) 使用List:

public static boolean useList(String[] arr, String targetValue) {
return Arrays.asList(arr). contains(targetValue);
}

2) 使用Set:

public static boolean useSet(String[] arr, String targetValue) {
Set<String> set = new HashSet<String>(Arrays.asList(arr));
return set. contains(targetValue);
}

3)使用一个简单循环:

public static boolean useLoop(String[] arr, String targetValue) {
for(String s: arr){
if(s.equals(targetValue))
return true;
}
return false;
}

4) 使用Arrays.binarySearch():
注:下面的代码是错误的,这样写出来仅仅为了理解方便。 binarySearch()只能用于已排好序的数组中。所以,你会发现下面结果很奇怪。

public static boolean useArraysBinarySearch(String[] arr, String targetValue) {
int a = Arrays.binarySearch(arr, targetValue);
if(a > 0)
return true;
else
return false;
}