#dart
Вопрос:
Что я должен использовать в Dart? И почему?
Я понимаю, что когда используется omit_local_variable_types, это, естественно, будет второе использование. Если есть какая-либо другая причина, пожалуйста, дайте мне знать.
List<int> numbers = [1,2,3];
var numbers = <int>[1,2,3];
Комментарии:
1. Последнее объективно короче, особенно если вы хотите, чтобы ваша переменная была объявлена с
final
помощью илиconst
. Первая форма также рискует случайно пропустить тип элемента;List numbers = [1, 2, 3];
объявляетсяnumbers
как aList<dynamic>
, тогда как это все равно будетList<int>
дляvar numbers = [1, 2, 3];
.
Ответ №1:
omit_local_variable_types
ворс.
Кроме того, также работает следующее:
var numbers = [1, 2, 3];
Технически тип объекта списка определяется типом, указанным в правой части, если он задан (предотвращение вывода типа из используемого типа переменной). Следующий код завершится ошибкой во время выполнения, так как созданный список является List<int>
.
List<num> numbers = <int>[1, 2, 3];
numbers[4] = 4.0;