Junior
Разкажете за операторите в езика за програмиране Dart.
sobes.tech AI
Отговор от AI
Операторите в Dart се използват за изпълнение на операции върху променливи и стойности.
Основни категории оператори:
- Присвояване: Присвояват стойност на променлива.
int a = 10; // Присвояване a += 5; // a = a + 5 a ??= 0; // Присвояване на 0, ако a е null - Арифметични: Извършват математически операции.
int sum = 5 + 3; int diff = 10 - 2; int prod = 4 * 6; double div = 15 / 3; int rem = 10 % 3; // Остатък при деление a++; // Инкремент b--; // Декремент - Отношения: Сравняват две стойности и връщат булево значение.
bool isEqual = (5 == 5); bool isNotEqual = (10 != 5); bool isGreater = (7 > 2); bool isLess = (3 < 8); bool isGreaterOrEqual = (4 >= 4); bool isLessOrEqual = (6 <= 10); - Логически: Извършват логически операции върху булеви стойности.
bool andResult = true && false; bool orResult = true || false; bool notResult = !true; - Типови: Проверяват типа на обекта по време на изпълнение.
var myObject = "Hello"; bool isString = myObject is String; // Проверка на тип bool isInt = myObject is int; String? maybeString; int? result = maybeString as int?; // Привеждане към тип (опасно) - Условни: Позволяват изпълнение на код в зависимост от условие.
var x = 10; var y = (x > 5) ? "по-голямо от 5" : "по-малко или равно на 5"; // Тернарен оператор var z = null; var value = z ?? "стойност по подразбиране"; // Оператор '??' - Каскадни оператори (..): Позволяват извикване на няколко метода или присвояване на стойности на свойства на един обект последователно.
var sb = StringBuffer(); sb..write("Hello") ..write(" ") ..write("World!"); - Безопасен достъп до null (?): Използва се за предотвратяване на грешки при работа с nullable типове.
String? nullableString; int? length = nullableString?.length; // Връща null, ако nullableString е null - Оператор за разпространение (... / ...?): Използва се за включване на всички елементи от списък в друг списък.
...?е безопасен за null.var list1 = [1, 2, 3]; var list2 = [0, ...list1, 4]; // [0, 1, 2, 3, 4] var nullableList = null; var list3 = [0, ...?nullableList, 4]; // [0, 4]
Поредността на изпълнение на операторите (приоритет) определя реда, по който се изпълняват операциите в израза.