Типы, допускающие null
Часть раздела Основы путешествия по Dart на Coddy. Урок 78 из 94.
Типы, допускающие значение null в Dart объявляются добавлением вопросительного знака (?) после имени типа. Это сообщает Dart, что переменная может содержать либо значение этого типа, либо null.
Объяви переменные разных типов, допускающие значение null:
String? name;
int? age;
bool? isActive;
double? price;Этим переменным можно присваивать значения или null:
name = 'Dart';
age = null;
isActive = true;
price = null;
print(name);
print(age);
print(isActive);
print(price);После выполнения приведённого выше кода вывод будет таким:
Dart
null
true
nullЗадание
НовичокВ этом задании ты потренируешься работать с типами, допускающими значение null, в Dart. Тип, допускающий значение null, объявляется добавлением вопросительного знака (?) после имени типа, что позволяет переменной хранить либо значение, либо null.
Заверши код, чтобы проверить, равно ли значение переменной username значению null. Если да, выведи "No username provided". Если значение не равно null, выведи "Username: ", а затем значение имени пользователя.
Попробуйте сами
void main() {
// Эта переменная может быть null из-за ? после String
String? username = null;
// TODO: Проверить, равен ли username значению null
// Если значение равно null, вывести "No username provided"
// Если значение не равно null, вывести "Username: ", а затем значение username
// Позже в программе username получает значение
username = "DartLearner";
// TODO: Снова проверить username, используя то же условие
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 2
Операторы сравненияЛогическое ИЛогическое ИЛИЛогическое НЕОператоры проверки типаПовторение — сравнения7Работа со строками
Конкатенация строкИнтерполяция строкМногострочные строкиСвойства строкОсновные методы строк10Коллекции — основы Map
Что такое Map?Создание MapДоступ к значениям по ключуПары «ключ—значение»Получение размера MapПолучение ключейПолучение значенийПроверка наличия ключа13Подробно о безопасности при работе с null
Понимание nullТипы, допускающие nullТипы, не допускающие nullОператор утверждения о ненулевом значенииПоздняя инициализацияПовторение — безопасная обработка null2Переменные и базовые типы данных
Что такое переменные?СтрокиЦелые числа (int)Числа с плавающей точкой (double)Логические значения (bool)Вывод типа с помощью «var»Переменные finalКонстантные переменныеСоглашения об именованииОсновы безопасности при работе с nullПовторение — объявление переменных8Управление потоком — циклы
Цикл «for»Цикл «while»Цикл «do-while»Использование «break» в циклахИспользование «continue» в циклахПовторение — повторение кода3Операторы, часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияИнкремент и декрементСокращённая запись присваиванияПовторение — простые вычисления6Поток управления — принятие решений
Оператор «if»Оператор «else»Оператор «else if»Повторение — простые решенияВложенные операторы «if»Оператор «switch»9Коллекции — основы списков
Что такое списки?Создание спискаДоступ по индексуПолучение длины спискаДобавление элементовУдаление элементовПроверка, пуст ли списокПеребор списка12Продвинутые функции
Необязательные позиционные параметрыИменованные параметрыОбязательные именованные параметрыЗначения параметров по умолчаниюПовторение — параметры функций15Проект: простой калькулятор
НастройкаОбъявление числаПотренируйтесь самостоятельно: Онлайн-компилятор Dart