Menu
Coddy logo textTech

Null safety di base

Fa parte della sezione Fondamenti del percorso Dart di Coddy. Lezione 14 di 94.

La sicurezza dei valori null aiuta a prevenire arresti imprevisti dell'app controllando quali variabili possono essere vuote (null).

Per impostazione predefinita, le variabili devono contenere un valore:

void main() {
  String name = 'Dart';
  print(name);  // Restituisce: Dart
  
  // Questo causerebbe problemi:
  // name = null;  // Non consentito
}

Aggiungi ? dopo il tipo per consentire i valori null:

void main() {
  String? name = 'Dart';
  print(name);  // Stampa: Dart
  
  // Ora possiamo assegnare null
  name = null;
  print(name);  // Stampa: null
}

Puoi dichiarare variabili nullable di qualsiasi tipo:

void main() {
  int? age;  // Nessun valore iniziale; il valore predefinito è null
  double? price = 19.99;
  bool? isAvailable = true;
  
  print(age);         // Restituisce: null
  print(price);       // Restituisce: 19.99
  print(isAvailable); // Restituisce: true
  
  // Possiamo impostare uno qualsiasi di questi valori su null
  price = null;
  isAvailable = null;
}

 

La sicurezza dai valori nulli aiuta a proteggere la tua app dagli arresti anomali imprevisti che si verificano quando il tuo codice tenta di usare valori nulli nelle operazioni.

challenge icon

Sfida

Principiante

Crea un programma Dart che dimostri la sicurezza di base rispetto ai valori null usando l'operatore ?:

  1. Dichiara una variabile String denominata username e impostala su null usando l'operatore di sicurezza rispetto ai valori null ? (String?)
  2. Dichiara una variabile int denominata userAge e impostala su null usando l'operatore di sicurezza rispetto ai valori null
  3. Stampa entrambe le variabili con etichette nel SEGUENTE formato ESATTO:
Username: null
User age: null

Poi:

  1. Assegna il valore "DartLearner" alla variabile username
  2. Assegna il valore 25 alla variabile userAge
  3. Stampa di nuovo entrambe le variabili usando ESATTAMENTE lo stesso formato di prima

Il tuo output deve corrispondere esattamente al formato mostrato sopra.

Provalo tu

void main() {
  // Dichiara qui le tue variabili nullable
  String? username = ?;
  int? userAge = ?;
  
  // Stampa i valori iniziali con le etichette
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
  
  // Assegna nuovi valori alle variabili
  username = ?;
  userAge = ?;
  
  // Stampa i valori aggiornati con le stesse etichette
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Dart online