Условие задачи. Правильная реализация должна получить массив значений int и вернуть массив логических значений, где каждый элемент является результатом проверки: является ли соответствующий исходный элемент суммой двух предыдущих элементов в данном массиве. Подробности: Гарантируется, что длина данного массива составляет 2 или более. Данный массив гарантированно не равен null. Метод возвращает массив логических значений, где каждый элемент является результатом для соответствующего элемента в данном массиве. Первые два элемента логического массива всегда false. Пример Input array: [1, -1, 0, 4, 6, 10, 15, 25] Output array: [false, false, true, false, false, true, false, true] Что в моем коде не так? У меня результат [false, false, false, false, false, false, false, false]
public class SumOfPrevious {

    public static void main(String[] args) {
        int[] array = new int[]{1, -1, 0, 4, 6, 10, 15, 25};

        System.out.println(Arrays.toString(getSumCheckArray(array)));
    }

    public static boolean[] getSumCheckArray(int[] array) {
        boolean[] booleans = new boolean[array.length];
        for (int i = 0; i < array.length - 1; i++) {
            for (int sum : array) {
                sum = array[i] + array[i + 1];
                if (sum == array[i]) {
                    Arrays.fill(array, sum);
                }
            }
        }

        return booleans;
    }
}