Кадом операторҳо дар Null-safety вуҷуд доранд?
sobes.tech AI
Ҷавоб аз AI
Дар Flutter Null Safety истифода мешаванд операторҳои зерин, ки бо навъҳои nullable алоқаманданд:
-
?(Нишони савол): Варақаи навъи nullable-ро эълон мекунад.String? nullableString; // Варақа метавонад String ё null дошта бошад -
!(Оператор изофа / Assert барои 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бошад, изразnullбармегардонад.String? nullableString; int? length = nullableString?.length; // Агар nullableString null бошад, length null мешавад -
?[](Оператор индексбандии бехатартар): Дастрасии бехатартар ба унсурҳои рӯйхат ё харита, ки метавонандnullбошанд, имкон медиҳад. Агар рӯйхат ё харитаnullбошад, изразnullбармегардонад.List<int>? nullableList; int? firstElement = nullableList?[0]; // Агар nullableList null бошад, firstElement null мешавад