#java #массивы
У меня есть массив: int[] array = new int[] {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}; Мне нужно вывести все элементы массива в консоль, я понимаю что для этого нужен цикл: for (int i = 0; i < 10; i++) { System.out.println(array[i]); } А что если добавить несколько элементов, скажем так: int[] array = new int[] {10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 101, 102, 103}; То как перебирать все эти элементы, постоянно менять условие i < ... Вот собственно вопрос, как перебирать массив элементов не зная сколько там элементов? :)
Ответы
Ответ 1
@Сашко, Доброе время суток! int[] array = new int[] { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 101, 102, 103, 104 }; for (int i = 0; i < array.length; i++) { System.out.println(array[i]); }Ответ 2
Для перебора всех элементов массива в Java есть как минимум три подхода: Цикл с условием Это привычный «сишный» способ. Просто проходим все индексы массива, перед каждой итерацией проверяя, не дошли ли до конца. for (int i = 0; i < array.length; i++) { System.out.printf("%d\t%d\n", i, array[i]); } Цикл по коллекции Пишем вначале переменную, которая будет принимать значения элементов массива, а затем через двоеточие — имя нашего массива. Если нужен индекс, его придётся считать отдельно. int i = 0; for (int element : array) { System.out.printf("%d\t%d\n", i, element); i++; } Применение потоков Начиная с Java 8 доступен специальный интерфейс Stream. Его удобно использовать вкупе с лябда-функциями. IntStream.of(array).forEach(element -> System.out.println("см. ==> " + element)); // если функции передаётся просто один аргумент, можно обойтись без стрелки IntStream.of(array).forEach(System.out::println); Бонус: последние два способа будут работать не только с массивами, а с произвольного вида коллекциями.
Комментариев нет:
Отправить комментарий