Свойство length и перебор массива

Тренажер по Java для пользователей с начальным уровнем подготовки.

Тренажер по Java

В этом уроке мы разберем, как работать с элементами массива, используя свойство length и циклы. Массивы в Java имеют фиксированный размер, и чтобы узнать количество элементов в нем, используется свойство array.length. Обратите внимание: это именно свойство (поле), а не метод, поэтому скобки () не нужны.

Для перебора элементов (итерации) чаще всего используются циклы:

  • классический цикл for: позволяет обращаться к элементам по индексу, что удобно, если нужно изменить значение элемента.
  • Цикл for-each (улучшенный for): for (Type var : array) — идеально подходит для чтения всех данных подряд без использования индексов.

Эти инструменты — основа алгоритмов обработки данных, от поиска суммы чисел до фильтрации строк. Наши онлайн задачи java помогут закрепить синтаксис и избежать частых ошибок, таких как выход за границы массива.

Список тем

1. Определение длины массива

id: 40459_arr_len_01_predict

Проанализируйте приведённый фрагмент кода на Java. В методе main создаётся и инициализируется массив строк, после чего программа выводит значение свойства length этого массива. Выберите число, которое появится в консоли после запуска кода.

Выберите правильный вариант ответа
class Main {
    public static void main(String[] args) {
        String[] seasons = {"Winter", "Spring", "Summer", "Autumn"};
        System.out.println(seasons.length);
    }
}
Сообщения
Проверить
Показать подсказку

2. Синтаксис свойства length

id: 40459_arr_iter_02_replace

Перед вами фрагмент кода, который должен вывести все элементы массива `numbers` на экран. Для этого используется стандартный цикл `for`. Чтобы цикл работал корректно и не вышел за пределы массива, в условии продолжения цикла необходимо указать предел для счетчика `i`. Допишите обращение к свойству массива, которое возвращает его размер.

Заполните пропуски
int[] numbers = {10, 20, 30, 40, 50};

for (int i = 0; i < numbers.input1S; i++) {
    System.out.println(numbers[i]);
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

3. Ошибка вызова метода вместо поля

id: 40459_arr_loop_03_error

Проанализируйте код. Программа должна вывести количество элементов массива `numbers`. Однако в текущем виде код не компилируется из-за ошибки в синтаксисе получения длины массива. Найдите неверную строку и исправьте её так, чтобы в консоль было выведено число 3.

Найдите ошибку и исправьте
class Main {
    public static void main(String[] args) {
        int[] numbers = {10, 20, 30};
        System.out.println(numbers.length());
    }
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

4. Сборка цикла for-each

id: 40459_arr_foreach_04_build

Соберите фрагмент кода на Java, который объявляет массив строк и выводит каждый его элемент в консоль, используя улучшенный цикл `for-each`. Конструкции классического цикла `for` с индексом в этом задании являются лишними.

Перетяните в правильном порядке строки из одного блока в другой
String[] seasons = {"Winter", "Spring", "Summer", "Autumn"};
for (int i = 0; i < seasons.length; i++) {
for (String season : seasons) {
    System.out.println(seasons[i]);
    System.out.println(season);
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

5. Индексы в цикле

id: 40459_arr_idx_05_select

В данном коде необходимо реализовать классический перебор массива `arr` с помощью цикла `for`. Выберите из выпадающих списков правильную инициализацию счетчика цикла (чтобы начать с первого элемента) и корректное условие выхода (чтобы обработать все элементы и не получить ошибку выхода за границы массива).

Нужно правильно расставить в пропуски предложенные варианты
int[] arr = {10, 20, 30, 40, 50};

// Настройте заголовок цикла
for (input1S; input2S; i++) {
    System.out.println("Index: " + i + ", Value: " + arr[i]);
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

6. Вычисление суммы элементов

id: 40459_arr_sum_06_give

Проанализируйте представленный фрагмент кода на Java. В программе объявляется массив целых чисел и переменная-аккумулятор `total`. Затем выполняется цикл `for`, который проходит по всем элементам массива. Вычислите значение, которое будет выведено в консоль после завершения работы цикла, и введите это число.

Что должно получиться?
public class Main {
    public static void main(String[] args) {
        int[] arr = {10, 15, 5};
        int total = 0;
        
        // Перебор массива и суммирование
        for (int i = 0; i < arr.length; i++) {
            total = total + arr[i];
        }
        
        System.out.println(total);
    }
}
Сообщения
Проверить
Показать подсказку

7. Элементы массива в цикле

id: 40459_arr_bnd_07_click

В приведенном коде выполняется перебор массива целых чисел. Ваша задача — найти и выделить кликом все места, где происходит обращение к элементу массива по индексу. Не выделяйте объявление массива, проверку его длины или использование переменной-счетчика отдельно от массива.

Кликните по всем фрагментам, которые подходят под условие задания.
public class Main {
    public static void main(String[] args) {
        int[] {{numbers~|~d1}} = {10, 20, 30, 40, 50};
        int {{sum~|~d2}} = 0;

        for (int {{i~|~d3}} = 0; {{i~|~d4}} < {{numbers~|~d5}}.length; {{i~|~d6}}++) {
            // Проверяем значение элемента
            if ({{numbers[i]~|~t1}} > 25) {
                // Суммируем подходящие элементы
                {{sum~|~d7}} += {{numbers[i]~|~t2}};
            }
            // Выводим текущий элемент
            System.out.println("Element: " + {{numbers[i]~|~t3}});
        }
    }
}
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру