Dart为布尔数据类型提供内置支持,Dart中的布尔数据类型仅支持两个值 – true
和false
。关键字bool
用于表示Dart中的布尔文字。
bool var_name = true; 或者 bool var_name = false;
示例1
bool b; b = 1>2; print(b); // 打印结果: false
示例2
与JavaScript不同,布尔数据类型仅将文字true
识别为true
。任何其他值都被视为false
。考虑以下示例:
var str = 'abc'; if(str){ print('String is not empty'); }else{ print('Empty String'); } // 打印结果: String is not empty
如果在JavaScript中运行,上面的代码段将打印消息 – "String is not empty"
,因为如果字符串不为空,if
结构将返回true
。
但是,在Dart中,str
被转换为false
,因为str != true
。因此,代码段将打印消息 – "Empty String"
(在未检查模式下运行时)。
示例3
如果以已检查模式运行,上面的代码片段将引发异常。如以下说明:
var str = 'abc'; if(str){ print('String is not empty'); }else{ print('Empty String'); } // 运行时异常