Работа со списками — распространенная задача в программировании на 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 и обеспечивать плавное выполнение вашего кода.