Понимание null
Часть раздела Основы путешествия по Dart на Coddy — урок 77 из 94.
Null в Dart представляет отсутствие значения. По умолчанию переменные в Dart не могут быть null, если это не разрешено явно.
Создайте переменную, которая может быть null, добавив знак вопроса после типа:
String? name = null;
print(name);После выполнения приведённого выше кода вывод будет:
nullОбычные переменные не могут быть null и должны иметь значение:
// This would cause an error:
// String name = null;
// This is valid:
String name = 'Dart';
print(name);После выполнения приведённого выше кода вывод будет следующим:
DartЗадание
ЛегкоВ этом вызове вы попрактикуетесь в работе с nullable-переменными в Dart. Nullable-переменная может содержать либо значение, либо null.
Завершите код, чтобы проверить, является ли переменная username равной null. Если да, присвойте строку "Guest" переменной displayName. Если username не равна null, присвойте значение username переменной displayName.
Ожидаемый вывод:
Welcome, Guest!Шпаргалка
В Dart null представляет отсутствие значения. Переменные по умолчанию не могут быть null, если это не разрешено явно.
Создайте nullable-переменную, добавив знак вопроса после типа:
String? name = null;Обычные переменные должны иметь значение и не могут быть null:
String name = 'Dart'; // Valid
// String name = null; // ErrorПопробуйте сами
void main() {
// Эта nullable переменная типа String уже определена для вас
String? username = null;
// TODO: Проверить, является ли username null
// Если null, установите displayName в "Guest"
// Если не null, установите displayName в значение username
String displayName = "";
// Это выведет приветственное сообщение
print("Welcome, $displayName!");
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы, часть 2
Операторы сравненияЛогический ANDЛогический ORЛогический NOTОператоры проверки типаПовторение - Сравнения7Работа со строками
Конкатенация строкИнтерполяция строкМногострочные строкиСвойства строкОсновные методы строк10Коллекции - Основы словарей
Что такое словари?Создание словаряДоступ к значениям по ключуПары ключ-значениеПолучение размера словаряПолучение ключейПолучение значенийПроверка существования ключа13Null-безопасность в деталях
Понимание nullNullable-типыNon-nullable-типыОператор утверждения nullПоздняя инициализацияПовторение - Безопасная обработка null2Переменные и основные типы данных
Что такое переменные?СтрокиЦелые числа (int)Вещественные числа (double)Булевы значения (bool)Вывод типов с 'var'Финальные переменныеКонстантные переменныеСоглашения об именованииОсновы null-безопасностиПовторение - Объявление переменных8Поток управления - Циклы
Цикл 'for'Цикл 'while'Цикл 'do-while'Использование 'break' в циклахИспользование 'continue' в циклахИтог - Повторение кода3Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор модуляИнкремент и декрементСокращённые присваиванияИтог - Простые вычисления6Управление потоком - Принятие решений
Оператор 'if'Оператор 'else'Оператор 'else if'Повторение - Простые решенияВложенные операторы 'if'Оператор 'switch'9Коллекции - Основы списков
Что такое списки?Создание спискаДоступ по индексуПолучение длины спискаДобавление элементовУдаление элементовПроверка, пуст ли списокИтерация по списку12Расширенные функции
Необязательные позиционные параметрыИменованные параметрыОбязательные именованные параметрыЗначения параметров по умолчаниюПовторение - Параметры функций15Проект: Простой калькулятор
НастройкаОбъявление числа