019 Java Foreach

For-Each Loop — введение в Java 019 #

Мы изучали цикл for, где в определённом диапазоне мы перебирали элементы. Существует брат уже изученного цикла - for each (фор ич). For each позволяет манипулировать со всеми элементами массива. Например

public class Main {
	public static void main(String[] args) {
		arrayTryandCry((int) (Math.random() * 100));
	}

	static void arrayTryAndCry(int arrayLength) {
		
		int[] myArray = new int[arrayLength];
		
		for (int element : myArray) {
			element = element + (int) (Math.random() * 100);
			System.out.println(element);
		}
	}
}

Давайте я попробую прочитать вслух, то что написано вверху:

В классе мэйн мы в точке входа в программу в методе мейн запускаем метод arrayTryAndCry(), в котором передаём параметр типа int. Этот параметр мы генерируем с помощью метода random() из библиотеки Math.

В методе arrayTryAndCry() наш параметр задаёт длину массива, а с помощью цикла фор ич и уже знакомого нам метода генератора случайных чисел мы заполняем наш массив значениями от нуля до 99.

Надеюсь вы можете сказать почему именно до 99, а не до 100. Или всё-таки до 100? А я ошибся?

For each отличается от for тем, что он проработает со всеми элементами массива, а for только с теми , на которые попал шаг.

Выгодное отличие, благодаря этому нам не надо указывать с какого элемента начинать работать и длину массива.

Домашнее задание #

  1. Сгенерируйте массив со случайными числами.
  2. Как записать элементы массива в обратном порядке? Запишите.