Dart为布尔数据类型提供内置支持。 Dart中的布尔数据类型仅支持两个值 – true和false。 关键字bool用于声明Dart中的布尔变量。
在Dart中声明布尔变量的语法如下所示
bool var_name = true; //申明一个值为true的布尔类型变量 OR bool var_name = false //申明一个值为false的布尔类型变量
例子
void main() { bool temp; temp= 12 > 5; print(temp); }
上面的代码会输出以下结果:
true
例子
与JavaScript不同,布尔数据类型仅将文字true识别为true。 任何其他值都被视为false。
请考虑一下以下的代码
var str = 'pipipi.net'; if(str) { print('字符串不为空'); } else { print('字符串为空'); }
如果在JavaScript中运行,上面的代码段将打印消息“String is not empty”,因为如果字符串不为空,if结构将返回true。
但是,在Dart中,str被转换为false,因为str!= true。 因此,代码段将打印消息“空字符串”(在未选中模式下运行时)。
例子
如果以检查模式运行,上面的代码片段将引发异常。 下面说明了同样的的情况
var str = 'pipipi.net'; if(str) { print('字符串不为空'); } else { print('字符串为空'); }
它将在严格模式(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
它将以不是严格模式(checked mode)生成以下输出:
字符串为空
注意: 默认情况下,WebStorm IDE以严格模式运行。
原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/dart/dart-boolean.html