Почему не работает метод, который выводит на экран значения нечетных элементов массива?

Необходимо написать метод, позволяющий вывести на экран значения нечетных элементов массива, их количество и сумму их значений. Результат вывести в консоль.

package com.company;

public class Main {

    public static void main(String[] args) {

        int[] array = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        for (int i = 0; i < array.length; i++) {
            System.out.println(Zero(array[i]));
        }
    }

    static void Zero(int array) {

        int numbers = 0;
        int summaNechet = 0;

        for (int i = 0; i < array.length; i++) {
            if (array[i] % 2 != 0) {
                summaNechet += array[i];
                numbers++;
            }
        }
        System.out.println("Количество нечетных элементов массива: " + numbers);
        System.out.println("Сумма нечетных элементов массива: " + summaNechet);
        
    }
}

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

Автор решения: Danis
package com.company;

public class Main {

    public static void main(String[] args) {

        int[] array = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        Zero(array);
    }

    static void Zero(int array) {

        int numbers = 0;
        int summaNechet = 0;

        for (int i = 0; i < array.length; i++) {
            if (array[i] % 2 != 0) {
                summaNechet += array[i];
                numbers++;
            }
        }
        System.out.println("Количество нечетных элементов массива: " + numbers);
        System.out.println("Сумма нечетных элементов массива: " + summaNechet);
        
    }
}
→ Ссылка
Автор решения: Дмитрий

Только сегодня писал про принцип единой ответственности... Не нужно писать метод, позволяющий вывести на экран значения нечетных элементов массива, их количество и сумму их значений, потому как в этом случае этот самый метод нарушает указанный принцип. Сделайте так:

import java.util.Arrays;

public class Main {

    public static void main(String[] args) {
        int[] array = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};        
        int[] oddElements = oddElements(array);
        System.out.println(Arrays.toString(oddElements));
        System.out.println("Количество нечетных элементов массива: " + oddElements.length);
        System.out.println("Сумма нечетных элементов массива: " + sumElements(oddElements));
    }
    
    public static int[] oddElements(int[]array) {
        return Arrays.stream(array).filter(e->e%2!=0).toArray();
    }
    
    public static long sumElements(int[]array) {
        return Arrays.stream(array).sum();                
    }

}
→ Ссылка