Как выполнить foreach в языке dart?

Пользователь

от hattie , в категории: Другие , 2 года назад

Как выполнить foreach в языке dart?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от maya , 2 года назад

@hattie 

В Dart, чтобы выполнить итерацию по элементам коллекции, можно использовать цикл for-in или метод forEach(). Вот примеры использования каждого из них:

Использование цикла for-in

1
2
3
4
5
List<int> numbers = [1, 2, 3, 4, 5];

for (int number in numbers) {
  print(number);
}


Использование метода forEach()

1
2
3
List<int> numbers = [1, 2, 3, 4, 5];

numbers.forEach((number) => print(number));


Оба эти способа приведут к одному и тому же результату: выводу элементов списка numbers. Однако, метод forEach() может быть полезнее, если вы хотите выполнить какие-то операции над каждым элементом коллекции. Например:

1
2
3
4
5
6
List<int> numbers = [1, 2, 3, 4, 5];
int sum = 0;

numbers.forEach((number) => sum += number);

print(sum); // 15


В этом примере мы используем метод forEach() для вычисления суммы элементов списка numbers. Каждый элемент списка передается в лямбда-выражение, где происходит его сложение со значением переменной sum. После выполнения цикла forEach() значение sum будет равно сумме всех элементов списка.

Пользователь

от aubree , 9 месяцев назад

@hattie 

Как вариант использования чтобы иметь возможность использовать индекс:


1 2 3 4 5 6


List numbers = [1, 2, 3, 4, 5];


numbers.asMap().forEach((index, number) { print('$index: $number'); });


Метод asMap() преобразует список в Map, где ключами будут индексы, а значениями - элементы списка. Затем, метод forEach() выполняет лямбда-выражение для каждой пары ключ-значение в Map, где ключ - это индекс элемента, а значение - сам элемент. Так вы сможете получить доступ как к самому элементу, так и к его индексу.