Programação Dart - Boolean
O Dart fornece um suporte embutido para o tipo de dados booleano. O tipo de dados booleano no DART suporta apenas dois valores - verdadeiro e falso. A palavra-chave bool é usada para representar um literal booleano no DART.
A sintaxe para declarar uma variável booleana no DART é fornecida a seguir -
bool var_name = true;
OR
bool var_name = false
Exemplo
void main() {
bool test;
test = 12 > 5;
print(test);
}
Irá produzir o seguinte output -
true
Exemplo
Ao contrário do JavaScript, o tipo de dados booleano reconhece apenas o verdadeiro literal como verdadeiro. Qualquer outro valor é considerado falso. Considere o seguinte exemplo -
var str = 'abc';
if(str) {
print('String is not empty');
} else {
print('Empty String');
}
O trecho acima, se executado em JavaScript, imprimirá a mensagem 'String não está vazia', já que a construção if retornará true se a string não estiver vazia.
No entanto, em Dart, stré convertido em falso como str! = true . Portanto, o snippet imprimirá a mensagem 'String vazia' (quando executado no modo não verificado).
Exemplo
O snippet acima é executado em checkedmodo lançará uma exceção. O mesmo é ilustrado abaixo -
void main() {
var str = 'abc';
if(str) {
print('String is not empty');
} else {
print('Empty String');
}
}
Irá produzir o seguinte output, dentro Checked Mode -
Unhandled exception:
type 'String' is not a subtype of type 'bool' of 'boolean expression' where
String is from dart:core
bool is from dart:core
#0 main (file:///D:/Demos/Boolean.dart:5:6)
#1 _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:261)
#2 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:148)
Irá produzir o seguinte output, dentro Unchecked Mode -
Empty String
Note - o WebStorm IDE é executado no modo marcado, por padrão.