РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
16 of 723 menu

Ключевое слово var

Ключевое слово var объявляет локальную переменную и позволяет компилятору автоматически вывести её тип на основе присвоенного значения. При объявлении переменной через var необходимо сразу присвоить ей значение, иначе тип вывести не получится. После вывода типа переменная остаётся строго типизированной: присвоить ей значение другого типа не получится.

Ключевое слово var можно использовать как для примитивных типов, так и для коллекций, объектов и пользовательских классов. Это удобно, когда тип очевиден из правой части выражения и не хочется дублировать его вручную.

Синтаксис

var name = value;

Пример

Давайте объявим переменную с числом через var и выведем её значение и тип:

void main() { var num = 12345; print(num); print(num.runtimeType); }

Результат выполнения кода:

12345 int

Пример

Давайте объявим строковую переменную через var и выведем её значение и тип:

void main() { var str = 'abcde'; print(str); print(str.runtimeType); }

Результат выполнения кода:

abcde String

Пример

Давайте объявим список через var и выведем его значение и тип:

void main() { var list = [1, 2, 3, 4, 5]; print(list); print(list.runtimeType); }

Результат выполнения кода:

[1, 2, 3, 4, 5] List<int>

Пример

После вывода типа переменная становится строго типизированной. Давайте попробуем присвоить ей значение другого типа:

void main() { var num = 12345; num = 'abcde'; print(num); }

Такой код не скомпилируется, так как переменная num уже имеет тип int.

Пример

Если тип переменной заранее неизвестен, вместо var используют dynamic. Давайте сравним поведение двух переменных:

void main() { var a = 12345; dynamic b = 12345; b = 'abcde'; print(a); print(b); }

Результат выполнения кода:

12345 abcde

Смотрите также

  • ключевое слово final,
    которое объявляет неизменяемую переменную
  • ключевое слово const,
    которое объявляет константу времени компиляции
  • ключевое слово late,
    которое объявляет переменную с поздней инициализацией
  • ключевое слово void,
    которое указывает на отсутствие возвращаемого значения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить