赞
踩
给定一个数组,任务是编写一个 Java 程序来检查该数组中是否存在特定元素。
例子:
输入: arr[] = [5, 1, 1, 9, 7, 2, 6, 10], key = 7
输出: true
输入: arr[] = [-1, 1, 5, 8], key = -2
输出: false
数组是包含一组元素的数据结构。通常,这些元素都具有相同的数据类型,例如整数或字符串。数组通常在计算机程序中用于组织数据,以便可以快速排序或搜索一组相关的值。数组的所有项都存储在连续的内存位置。
方法
在 Java 中,有多种方法可以检查此数组中是否存在特定元素。这些都是 -
使用线性搜索方法
使用二分查找法
使用 List.contains() 方法
使用 Stream.anyMatch() 方法
1.使用线性搜索方法:
在此,顺序遍历列表或数组,并检查每个元素。
句法:
for (int 元素: arr) {
if (元素==toCheckValue) {
返回真;
}
}
例子:
// Java program to check whether // an element is present in array or not import java.util.Arrays; import java.util.stream.IntStream; class GFG { // Function return true if given element // found in array private static void check(int[] arr, int toCheckValue) { // check if the specified element // is present in the array or not // using Linear Search method boolean test = false; for (int element : arr) { if (element == toCheckValue) { test = true; break; } } // Print the result System.out.println("Is " + toCheckValue + " present in the array: " + test); } public static void main(String[] args) { // Get the array int arr[] = { 5, 1, 1, 9, 7, 2, 6, 10 }; // Get the value to be checked int toCheckValue = 7; // Print the array System.out.println("Array: " + Arrays.toString(arr)); // Check if this value is // present in the array or not check(arr, toCheckValue); } }
输出
数组:[5,1,1,9,7,2,6,10]
数组中是否存在 7: true
句法:
公共静态整型
二进制搜索(数据类型 arr,数据类型键)
例子:
// Java program to check whether // an element is present in array or not import java.util.Arrays; import java.util.stream.IntStream; class GFG { // Function return true if given element // found in array private static void check(int[] arr, int toCheckValue) { // sort given array Arrays.sort(arr); // check if the specified element // is present in the array or not // using Binary Search method int res = Arrays.binarySearch(arr, toCheckValue); boolean test = res >= 0 ? true : false; // Print the result System.out.println("Is " + toCheckValue + " present in the array: " + test); } public static void main(String[] args) { // Get the array int arr[] = { 5, 1, 1, 9, 7, 2, 6, 10 }; // Get the value to be checked int toCheckValue = 7; // Print the array System.out.println("Array: " + Arrays.toString(arr)); // Check if this value is // present in the array or not check(arr, toCheckValue); } }
输出
数组:[5,1,1,9,7,2,6,10]
数组中是否存在 7: true
3.使用List.contains()方法:
Java中的List contains()方法用于检查给定列表中是否存在指定元素。
句法:
公共布尔包含(对象)
要搜索的对象元素的位置。
例子:
// Java program to check whether // an element is present in array or not import java.util.Arrays; class GFG { // Function return true if given element // found in array private static void check(Integer[] arr, int toCheckValue) { // check if the specified element // is present in the array or not // using contains() method boolean test = Arrays.asList(arr) .contains(toCheckValue); // Print the result System.out.println("Is " + toCheckValue + " present in the array: " + test); } public static void main(String[] args) { // Get the array Integer arr[] = { 5, 1, 1, 9, 7, 2, 6, 10 }; // Get the value to be checked int toCheckValue = 7; // Print the array System.out.println("Array: " + Arrays.toString(arr)); // Check if this value is // present in the array or not check(arr, toCheckValue); } }
输出
数组:[5,1,1,9,7,2,6,10]
数组中是否存在 7: true
4.使用Stream.anyMatch()方法:
Stream anyMatch(Predicate predicate) 返回此流的任何元素是否与提供的谓词匹配。如果不需要确定结果,它可能不会评估所有元素上的谓词。
句法:
boolean anyMatch(Predicate 谓词)
其中 T 是谓词输入的类型
如果有任何元素,该函数将返回 true
流与提供的谓词匹配,
否则为假。
示例1:使用Stream.of()方法创建Stream
// Java program to check whether // an element is present in array or not import java.util.Arrays; import java.util.stream.IntStream; class GFG { // Function return true if given element // found in array private static void check(int[] arr, int toCheckValue) { // check if the specified element // is present in the array or not // using anyMatch() method boolean test = IntStream.of(arr) .anyMatch(x -> x == toCheckValue); // Print the result System.out.println("Is " + toCheckValue + " present in the array: " + test); } public static void main(String[] args) { // Get the array int arr[] = { 5, 1, 1, 9, 7, 2, 6, 10 }; // Get the value to be checked int toCheckValue = 7; // Print the array System.out.println("Array: " + Arrays.toString(arr)); // Check if this value is // present in the array or not check(arr, toCheckValue); } }
输出
数组:[5,1,1,9,7,2,6,10]
数组中是否存在 7: true
示例2:使用Arrays.stream()方法创建Stream
// Java program to check whether // an element is present in array or not import java.util.Arrays; import java.util.stream.IntStream; class GFG { // Function return true if given element // found in array private static void check(int[] arr, int toCheckValue) { // check if the specified element // is present in the array or not // using anyMatch() method boolean test = IntStream.of(arr) .anyMatch(x -> x == toCheckValue); // Print the result System.out.println("Is " + toCheckValue + " present in the array: " + test); } public static void main(String[] args) { // Get the array int arr[] = { 5, 1, 1, 9, 7, 2, 6, 10 }; // Get the value to be checked int toCheckValue = 7; // Print the array System.out.println("Array: " + Arrays.toString(arr)); // Check if this value is // present in the array or not check(arr, toCheckValue); } }
输出
数组:[5,1,1,9,7,2,6,10]
数组中是否存在 7: true
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。