Menu
CoddyTech

Null safety di base

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

La sicurezza contro i valori null aiuta a prevenire arresti anomali 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);  // Stampa: 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);         // Stampa: null
  print(price);       // Stampa: 19.99
  print(isAvailable); // Stampa: true
  
  // Possiamo impostare ciascuna di queste variabili su null
  price = null;
  isAvailable = null;
}

 

La sicurezza dai valori null aiuta a proteggere la tua app dagli arresti anomali imprevisti che si verificano quando il codice tenta di usare valori null 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 chiamata username e assegnale null usando l’operatore di sicurezza rispetto ai valori null ? (String?)
  2. Dichiara una variabile int chiamata userAge e assegnale 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 nello STESSO formato ESATTO di prima

Il tuo output deve corrispondere al formato esatto 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