Кои оператори съществуват в Null-safety?
sobes.tech AI
Отговор от AI
В Flutter Null Safety се използват следните оператори, свързани с nullable типове:
-
?(Въпросителен знак): Декларира променлива като nullable.String? nullableString; // Променливата може да съдържа String или null -
!(Възклицателен знак / Assert за не-null): Гарантира на компилатора, че стойността не еnullв този момент. Трябва да се използва с внимание, тъй като може да предизвика грешка по време на изпълнение, ако стойността еnull.String nonNullableString = nullableString!; // Гарантираме, че nullableString не е null -
??(Оператор за сливане на null): Предоставя резервна стойност, ако левият израз еnull.String result = nullableString ?? "Стойност по подразбиране"; // Ако nullableString е null, резултатът ще бъде "Стойност по подразбиране" -
??=(Оператор за присвояване при сливане на null): Присвоява стойност на променлива само ако тя еnull.String? variable; variable ??= "Начална стойност"; // Ако variable е null, ще се присвои "Начална стойност" -
?.(Оператор за безопасен достъп): Позволява безопасен достъп до членове на обект, който може да е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