Есть ли оператор токаря для только одного условия if в dart? - PullRequest
0 голосов
/ 30 января 2020

В дротике у нас много операторов токарей. Но есть ли у нас один оператор токарного станка только для условия if?

Пример

В состоянии

if(num == 1){
   print(true);
} else {
   print(false);
}

В токарном станке

print(num == 1 ? true : false );

Итак, мы есть операторы токаря только для истинного состояния, как в примере выше?

if(num == 1){
   print(true);
}

1 Ответ

1 голос
/ 30 января 2020

Условный оператор ? / : в Dart требует всех трех операндов. Это происходит потому, что все выражения должны иметь значение, и если вы могли бы сделать просто e1 ? e2, то выражение имеет нет значение, если e1 ложно.

Это не невозможно Представьте себе двоичный условный оператор, в котором отсутствующее выражение по умолчанию равно null, скажем (e1?:elseExpression) или (e1?thenExpression:), но тогда вы также можете просто написать null, и сохранение четырех букв, вероятно, не стоит потенциальной потери читабельности. .

Обь-придурок. Условный оператор в Dart - это один из двух троичных операторов (операторы, требующие трех операндов, как бинарные операторы, требующие двух операндов), другой троичный оператор - []=.

...