как проверить заполнены ли n количество ячеек массива определённым значением

мне нужно проверить есть ли в массиве n количество свободных ячеек(со значениями "0" где "1" - заполнен) int[] array=int[10]; представим такой массив {0,1,0,1,0,0,0,1,1,0}; нужно вычислить n количество ячеек в массиве, где n к примеру ровняется трём


Ответы (1 шт):

Автор решения: ulxanxv
import java.util.Arrays;
import java.util.InputMismatchException;
import java.util.Scanner;

public class Main {

    private static final int VALUE = 0;

    public static void main(String[] args) {
        final int[] array = new int[]{0, 1, 0, 1, 0, 0, 0, 1, 1, 0};

        System.out.print("Введите N: ");
        final int n;
        try (final Scanner scanner = new Scanner(System.in)) {
            n = scanner.nextInt();
        } catch (RuntimeException ex) {
            System.err.println("Во время считывания переменной произошла ошибка!");
            ex.printStackTrace();
            return;
        }

        final String result = (n == getCountOfValue(array, VALUE)) ?
                String.format("Число %d совпадает с количеством числа %d в массиве", n, VALUE) :
                String.format("Число %d не совпадает с количеством числа %d в массиве", n, VALUE);

        System.out.println(result);
    }

    private static long getCountOfValue(int[] array, int value) {
        return Arrays.stream(array)
                .filter(x -> x == value)
                .count();
    }

}
→ Ссылка