Полное руководство: исключение нулевых значений в списках дартс

Работа со списками — распространенная задача в программировании на Dart. Однако иногда вы можете столкнуться с ситуациями, когда вам нужно удалить или исключить нулевые значения из списка Dart. В этой статье мы рассмотрим различные методы и приведем примеры кода, которые помогут вам добиться этого эффективно.

Метод 1. Использование метода where()с лямбда-функцией

List<String?> listWithNulls = ['apple', null, 'banana', null, 'cherry'];
List<String> listWithoutNulls = listWithNulls.where((element) => element != null).toList();
print(listWithoutNulls);  // Output: ['apple', 'banana', 'cherry']

Метод 2: использование метода removeWhere()

List<int?> listWithNulls = [1, null, 2, null, 3];
listWithNulls.removeWhere((element) => element == null);
print(listWithNulls);  // Output: [1, 2, 3]

Метод 3. Создание вспомогательной функции для фильтрации нулевых значений

List<double?> listWithNulls = [1.5, null, 2.3, null, 3.7];
List<double> listWithoutNulls = removeNullValues(listWithNulls);
List<double> removeNullValues(List<double?> list) {
  List<double> resultList = [];
  for (var item in list) {
    if (item != null) {
      resultList.add(item);
    }
  }
  return resultList;
}
print(listWithoutNulls);  // Output: [1.5, 2.3, 3.7]

Метод 4. Использование метода fold()для фильтрации нулевых значений

List<int?> listWithNulls = [1, null, 2, null, 3];
List<int> listWithoutNulls = listWithNulls.fold([], (result, element) {
  if (element != null) {
    result.add(element);
  }
  return result;
});
print(listWithoutNulls);  // Output: [1, 2, 3]

Метод 5. Использование метода toList()с операторами, поддерживающими значение NULL

List<String?> listWithNulls = ['apple', null, 'banana', null, 'cherry'];
List<String> listWithoutNulls = [
  ...listWithNulls.where((element) => element != null)
];
print(listWithoutNulls);  // Output: ['apple', 'banana', 'cherry']

В этой статье мы рассмотрели различные методы исключения нулевых значений из списков Dart. Используя такие методы, как where(), removeWhere(), fold()и вспомогательные функции, вы можете эффективно отфильтровывать нулевые значения из своих списков. Эти методы помогут вам поддерживать чистые и надежные структуры данных в ваших проектах Dart.

Реализуя эти методы, вы можете легко обрабатывать нулевые значения в списках Dart и обеспечивать плавное выполнение вашего кода.