Sobes.tech
Junior

Quali operatori esistono in Null-safety?

sobes.tech AI

Risposta dell'AI

In Flutter Null Safety, vengono utilizzati i seguenti operatori relativi ai tipi nullable:

  • ? (Punto interrogativo): Dichiarano una variabile come nullable.

    String? stringaNullable; // La variabile può contenere String o null
    
  • ! (Operatore di negazione / Assert di non-null): Garantisce al compilatore che il valore non è null in quel momento. Usarlo con cautela, poiché può causare un errore a runtime se il valore è null.

    String nonNullableString = stringaNullable!; // Garantiamo che stringaNullable non sia null
    
  • ?? (Operatore di coalescenza nulla): Fornisce un valore di fallback se l'espressione a sinistra è null.

    String risultato = stringaNullable ?? "Valore di Default"; // Se stringaNullable è null, risultato sarà "Valore di Default"
    
  • ??= (Operatore di assegnazione di coalescenza nulla): Assegna un valore alla variabile solo se questa è null.

    String? variabile;
    variabile ??= "Valore Iniziale"; // Se variabile è null, le assegniamo "Valore Iniziale"
    
  • ?. (Operatore di accesso sicuro): Permette di accedere in modo sicuro ai membri di un oggetto che potrebbe essere null. Se l'oggetto è null, l'espressione restituisce null.

    String? stringaNullable;
    int? lunghezza = stringaNullable?.length; // Se stringaNullable è null, lunghezza sarà null
    
  • ?[] (Operatore di indice sicuro): Permette di accedere in modo sicuro agli elementi di una lista o di una mappa che potrebbe essere null. Se la lista o la mappa è null, l'espressione restituisce null.

    List<int>? listaNullable;
    int? primoElemento = listaNullable?[0]; // Se listaNullable è null, primoElemento sarà null