Sobes.tech
Junior

Null-safetyде кандай операторлор бар?

sobes.tech AI

AIден жооп

Flutterдеги Null Safety менен иштөөдө, nullable түрлөрү менен байланышкан төмөнкү операторлор колдонулат:

  • ? (Суроо белгиси): Өзгөрмөнү nullable катары жарыялайт.

    String? nullableString; // Өзгөрмө String же null болушу мүмкүн
    
  • ! (Кычкыруу белгиси / Non-null бекитүү): Компиляторго маанинин ушул учурда null эмес экенин кепилдейт. Эскертүү менен колдонуу керек, анткени маанинин null болушу учурда ишке ашырылуу катасын алып келиши мүмкүн.

    String nonNullableString = nullableString!; // nullableString null эмес деп кепилдик беребиз
    
  • ?? (Null бириктирүү оператору): Сол жактагы мааниге null болсо, ал альтернативдүү маанини берет.

    String result = nullableString ?? "Өзгөрмө мааниси"; // Эгер nullableString null болсо, result "Өзгөрмө мааниси" болот
    
  • ??= (Null бириктирүү белгилөө оператору): Өзгөрмө null болсо гана маанини белгилейт.

    String? variable;
    variable ??= "Баштапкы мааниси"; // Эгер variable null болсо, ага "Баштапкы мааниси" берилет
    
  • ?. (Коопсуз жетүү оператору): Объекттин мүчөлөрүнө коопсуз жетүүнү камсыздайт, эгер объект null болсо, экспрессия null кайтарат.

    String? nullableString;
    int? length = nullableString?.length; // Эгер nullableString null болсо, length null болот
    
  • ?[] (Коопсуз индексдөө оператору): Листтин же Mapтин элементтерине коопсуз жетүүнү камсыздайт, алар null болушу мүмкүн. Эгер лист же Map null болсо, экспрессия null кайтарат.

    List<int>? nullableList;
    int? firstElement = nullableList?[0]; // Эгер nullableList null болсо, firstElement null болот