Dartブール型

Dartはブールデータ型の組み込みサポートを提供し、Dartのブールデータ型はtruefalseの2つの値のみをサポートします。キーワードboolは、Dartでブールテキストを表すために使用されます。

Dartでブール変数を宣言するための構文は次のとおりです。

bool var_name = true;  
// 或は
bool var_name = false

実例1

void main() { 
   bool test; 
   test = 12 > 5; 
   print(test); 
}

上記のコードを実行した後、出力結果は以下のとおりです。

true

実例2

JavaScriptとは異なり、ブールデータ型はリテラルtrueのみをtrueとして認識します。その他の値はすべてfalseと見なされます。次には例を挙げます。

var str = 'abc'; 
if(str) { 
   print('String is not empty'); 
} else { 
   print('Empty String'); 
}

JavaScriptで実行すると、上記のコードは「String is not empty」というメッセージを出力します。文字列が空でない場合、if構造体はtrueを返します。

ただし、Dartでは、str != trueであるため、strfalseに変換されます。これにより、コードは「Empty String」というメッセージを出力します(未チェックのモードで実行している場合)。

実例3

チェックモードで実行している場合、上記のコードは例外をスローします。

void main() { 
   var str = 'abc'; 
   if(str) { 
      print('String is not empty'); 
   } else { 
      print('Empty String'); 
   } 
}

チェックモードで出力結果は以下のとおりです。

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)

チェックモードで出力結果は以下のとおりです。

Empty String

ヒント – デフォルトでは、WebStorm IDEはチェックモードで実行されます。

Share

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です