3 formas de verificar si existe un valor en una matriz en Java

En Java, hay muchas formas de verificar si existe un elemento en particular en esta matriz.

1) Usa un método de búsqueda lineal

Complejidad temporal: O(N) Espacio auxiliar: O(1)

para (elemento int: arr) {

    if (elemento == aCheckValue) {

        devolver verdadero;

    }

}

Código de muestra:

import java.util.Arrays;

public class Demo {
    private static void check(int[] arr, int toCheckValue) {
        boolean test = false;
        for (int element : arr) {
            if (element == toCheckValue) {
                test = true;
                break;
            }
        }
        System.out.println("Is " + toCheckValue + " present in the array: " + test);
    }

    public static void main(String[] args) {
        int arr[] = {5, 1, 1, 9, 7, 2, 6, 10};
        int toCheckValue = 7;
        System.out.println("Array: " + Arrays.toString(arr));
        check(arr, toCheckValue);
    }
}

resultado de la operación:

Matriz: [5, 1, 1, 9, 7, 2, 6, 10]

Es 7 presente en la matriz: verdadero

2 ) Usa el método List.contains()

El método List contains() en Java se usa para verificar si el elemento especificado existe en la lista dada.

booleano público contiene (Objeto)

Código de muestra:

import java.util.Arrays;

public class Demo {
    private static void check(Integer[] arr, int toCheckValue) {
        boolean test = Arrays.asList(arr).contains(toCheckValue);
        System.out.println("Is " + toCheckValue + " present in the array: " + test);
    }

    public static void main(String[] args) {
        Integer arr[] = {5, 1, 1, 9, 7, 2, 6, 10};
        int toCheckValue = 7;
        System.out.println("Array: " + Arrays.toString(arr));
        check(arr, toCheckValue);
    }
}

resultado de la operación:

Matriz: [5, 1, 1, 9, 7, 2, 6, 10]

Es 7 presente en la matriz: verdadero

3 ) Utilice el método Stream.anyMatch()

booleano anyMatch(Predicado<T> predicado)

T es el tipo de entrada

La función devuelve verdadero si hay algún elemento, falso en caso contrario.

Código de muestra:

import java.util.Arrays;
import java.util.stream.IntStream;

public class Demo {
    private static void check(int[] arr, int toCheckValue) {
        // 检查指定元素是否
        // 是否存在于数组中
        // 使用 anyMatch() 方法
        boolean test = IntStream.of(arr)
                .anyMatch(x -> x == toCheckValue);

        System.out.println("Is " + toCheckValue + " present in the array: " + test);
    }

    public static void main(String[] args) {
        int arr[] = {5, 1, 1, 9, 7, 2, 6, 10};
        int toCheckValue = 7;
        System.out.println("Array: " + Arrays.toString(arr));
        check(arr, toCheckValue);
    }
}

resultado de la operación:

Matriz: [5, 1, 1, 9, 7, 2, 6, 10]

Es 7 presente en la matriz: verdadero

Supongo que te gusta

Origin blog.csdn.net/xijinno1/article/details/132114694
Recomendado
Clasificación