Sobes.tech
Junior

Null-safety'da qanday operatorlar mavjud?

sobes.tech AI

AIdan javob

Flutterda Null Safety'da, nullable tiplərlə əlaqəli aşağıdakı operatorlər istifadə olunur:

  • ? (Suallar işarəsi): Bir dəyişəni nullable kimi elan edir.

    String? nullableString; // Dəyişən String və ya null ola bilər
    
  • ! (İstisna Operatoru / Non-null Təsdiqi): Kompilyatora bu anda dəyərin null olmadığını təmin edir. Diqqətlə istifadə olunmalıdır, çünki dəyər null olarsa, işləmə vaxtı xətası yarada bilər.

    String nonNullableString = nullableString!; // nullableString-in null olmadığını təmin edirik
    
  • ?? (Null Birleştirmə Operatoru): Sol tərəf null olduqda, ehtiyat dəyər verir.

    String result = nullableString ?? "Default Value"; // Əgər nullableString null olarsa, result "Default Value" olacaq
    
  • ??= (Null Birleştirmə Təyinat Operatoru): Bir dəyişənə yalnız sol tərəf null olduqda dəyər təyin edir.

    String? variable;
    variable ??= "Initial Value"; // Əgər variable null olarsa, ona "Initial Value" təyin edilir
    
  • ?. (Null-ə güvənən Giriş Operatoru): Bir obyektin üzvlərinə təhlükəsiz giriş imkanı verir, obyekt null olarsa, ifadə null qaytarır.

    String? nullableString;
    int? length = nullableString?.length; // Əgər nullableString null olarsa, length null olacaq
    
  • ?[] (Null-ə güvənən İndeks Operatoru): List və ya Map elementlərinə təhlükəsiz giriş imkanı verir, onlar null ola bilər. Əgər siyahı və ya xəritə null olarsa, ifadə null qaytarır.

    List<int>? nullableList;
    int? firstElement = nullableList?[0]; // Əgər nullableList null olarsa, firstElement null olacaq