Menu
Coddy logo textTech

Non-nullable-типы

Часть раздела Основы путешествия по Dart на Coddy — урок 79 из 94.

Ненулевые типы в Dart являются значением по умолчанию для всех переменных. Когда вы объявляете переменную без символа ?, она всегда должна иметь значение и не может быть null.

Создайте ненулевую переменную типа String:

String name = 'Dart';
print(name);

После выполнения приведённого выше кода вывод будет:

Dart

Попытка присвоить null неприводимой к null переменной вызывает ошибку:

// This would cause an error:
// String language = null;

Ненульловые переменные должны быть инициализированы значением:

int score = 100;
bool isActive = true;
double price = 9.99;

print('Score: $score, Active: $isActive, Price: $price');

После выполнения приведённого выше кода вывод будет:

Score: 100, Active: true, Price: 9.99
challenge icon

Задание

Новичок

В этом вызове вы попрактикуетесь в работе с ненулевыми типами в Dart. По умолчанию переменные в Dart не могут быть null, если вы явно не сделаете их nullable с помощью символа ?.

Ваша задача — исправить код, присвоив подходящие значения ненулевым переменным, которые в настоящее время не инициализированы.

Ожидаемый вывод:

Name: John
Age: 25
Is active: true
Score: 95.5

Шпаргалка

Ненулевые типы в Dart являются значением по умолчанию для всех переменных. Они всегда должны иметь значение и не могут быть null.

Объявляйте ненулевые переменные с начальными значениями:

String name = 'Dart';
int score = 100;
bool isActive = true;
double price = 9.99;

Ненулевым переменным нельзя присваивать null:

// This would cause an error:
// String language = null;

Используйте интерполяцию строк для отображения значений переменных:

print('Score: $score, Active: $isActive, Price: $price');

Попробуйте сами

void main() {
  // Эти переменные не-nullable и требуют значений
  // TODO: Инициализируйте эти переменные подходящими значениями
  String name;
  int age;
  bool isActive;
  double score;
  
  // Этот код выведет значения
  print('Name: $name');
  print('Age: $age');
  print('Is active: $isActive');
  print('Score: $score');
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы