Types
Основные типы данных
- Numbers: int (не больше 64 бит, в зависимости от платформы), double (64-бит числа с плавающей запятой (двойной точности)
- Strings: String (UTF-16)
- Booleans: bool
- Records: (v1, v2)
- Lists: List
- Sets: Set
- Maps: Map
- Runes: Runes
- Symbols: Symbol
- Null: Null
Остальные типы
- dynamic - указывает, что тип переменной может меняться по ходу программы.
- var - указывает, что тип переменной будет определен при инициализации.
- Object - суперкласс всех других классов, кроме Null
- Enum - суперкласс для создания списков
- Future, Stream - используются для асинхронного программирования
- Iterable - используется для создания классов-списков, а также функций синхронной генерации
- Never - указывает, что выражение никогда не сможет успешно завершить вычисление. Чаще всего используется для функций, которые всегда генерируют исключение.
DANGER
Object, Object?, Null, Never имеют особенную роль в иерархии классов. Подробнее об этом в разделе "Null-safety"