Jakie operatory istnieją w Null-safety?
sobes.tech AI
Odpowiedź od AI
W Flutterze Null Safety używa się następujących operatorów związanych z typami nullable:
-
?(Znak zapytania): Deklaruje zmienną jako nullable.String? nullableString; // Zmienna może zawierać String lub null -
!(Operator wykrzyknika / Non-null assertion): Gwarantuje kompilatorowi, że wartość nie jestnullw tym momencie. Należy używać ostrożnie, ponieważ może spowodować błąd w czasie wykonywania, jeśli wartość będzienull.String nonNullableString = nullableString!; // Gwarantujemy, że nullableString nie jest null -
??(Operator łączenia null): Zapewnia wartość zapasową, jeśli lewa strona wyrażenia jestnull.String result = nullableString ?? "Wartość domyślna"; // Jeśli nullableString jest null, result będzie "Wartość domyślna" -
??=(Operator przypisania łączenia null): Przypisuje wartość do zmiennej tylko wtedy, gdy jest onanull.String? variable; variable ??= "Wartość początkowa"; // Jeśli variable jest null, przypisuje się "Wartość początkowa" -
?.(Operator bezpiecznego dostępu): Pozwala bezpiecznie uzyskać dostęp do członków obiektu, który może byćnull. Jeśli obiekt jestnull, wyrażenie zwracanull.String? nullableString; int? length = nullableString?.length; // Jeśli nullableString jest null, length będzie null -
?[](Operator bezpiecznego indeksowania): Pozwala bezpiecznie uzyskać dostęp do elementów listy lub mapy, które mogą byćnull. Jeśli lista lub mapa jestnull, wyrażenie zwracanull.List<int>? nullableList; int? firstElement = nullableList?[0]; // Jeśli nullableList jest null, firstElement będzie null