Почему этот код не добавляет «1» к значениям массива? (я написал его "Enhanced For Loop", когда я писал это с "стара для", он работалУвеличение значений массива в Java
public class EnhanceForLoop {
public static void main(String[] args) {
int[] list = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
System.out.println("List before call addOne");
printList(list);
System.out.println("Calling addOne");
addOne(list);
System.out.println("List after call addOne");
printList(list);
}
public static void addOne(int[] list) {
for (int val : list) {
val = val + 1;
}
}
public static void printList(int[] list) {
System.out.println("index, value");
for (int i = 0; i < list.length; i++) {
System.out.println(i + ", " + list[i]);
}
}
}
Из каждого документа: _ "Поэтому цикл for для каждого цикла не используется для фильтрации. Точно так же нельзя использовать циклы, где вам нужно заменить элементы в списке или массиве, когда вы проходите его ». _ Короче говоря, используйте для каждого, когда вы выполняете операцию только для чтения. –
Вы неправильно поняли цель повышения для цикла – Touchstone