Nullable-типы
Часть раздела Основы путешествия по Dart на Coddy — урок 78 из 94.
Nullable-типы в Dart объявляются добавлением знака вопроса (?) после имени типа. Это сообщает Dart, что переменная может содержать либо значение этого типа, либо null.
Объявите nullable-переменные разных типов:
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Задание
НовичокВ этом вызове вы попрактикуетесь в работе с nullable типами в Dart. Nullable тип объявляется добавлением знака вопроса (?) после имени типа, что позволяет переменной содержать либо значение, либо null.
Завершите код для проверки, является ли переменная username равной null. Если да, выведите "No username provided". Если не null, выведите "Username: " за которым следует значение username.
Шпаргалка
Nullable-типы в Dart объявляются добавлением знака вопроса (?) после имени типа, что позволяет переменным хранить либо значение этого типа, либо null:
String? name;
int? age;
bool? isActive;
double? price;Переменным nullable-типов можно присваивать значения или null:
name = 'Dart';
age = null;
isActive = true;
price = null;Попробуйте сами
void main() {
// Эта переменная может быть null из-за ? после String
String? username = null;
// TODO: Проверить, является ли username null
// Если она null, вывести "No username provided"
// Если не null, вывести "Username: " за которым следует значение username
// Позже в программе username получает значение
username = "DartLearner";
// TODO: Проверить username снова с использованием того же условия
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
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Проект: Простой калькулятор
НастройкаОбъявление числа