Menu
Coddy logo textTech

型判定演算子

CoddyのDartジャーニー「基礎」セクションの一部 — レッスン 26/94。

Dartの 型テスト演算子 は実行時に変数の型をチェックします:is は変数が型に一致するかどうかを検証し、is! は一致しないかどうかをチェックします。

void main() {
  var number = 42;
  var isInteger = number is int;
  
  print('Is $number an integer? $isInteger');
}
void main() {
  var price = 9.99;
  var isNotInteger = price is! int;
  
  print('Is $price not an integer? $isNotInteger');
}
void main() {
  var value1 = 'Hello';
  var value2 = 42;
  var value3 = true;
  
  print('$value1 is a String: ${value1 is String}');
  print('$value2 is a double: ${value2 is double}');
  print('$value3 is a bool: ${value3 is bool}');
}
challenge icon

チャレンジ

簡単

型テスト演算子(is および is!)を使用して変数の型をチェックする Dart プログラムを作成してください:

  1. 型推論(var)を使用して値 42 を持つ変数 number を作成してください
  2. 型推論を使用して値 3.14 を持つ変数 decimal を作成してください
  3. 型推論を使用して値 "Hello" を持つ変数 text を作成してください
  4. 型推論を使用して値 true を持つ変数 active を作成してください
  5. is 演算子を使用して、各変数が正しい型(int, double, String, bool)であるかをチェックしてください
  6. is! 演算子を使用して、各変数が不正な型ではないかをチェックしてください
  7. 期待される出力に示される正確な形式で結果を出力してください

出力は以下の正確な形式と一致する必要があります:

number is int: true
number is! String: true
decimal is double: true
decimal is! int: true
text is String: true
text is! bool: true
active is bool: true
active is! double: true

チートシート

Dartの型テスト演算子は、実行時に変数の型をチェックします:

  • is - 変数が型に一致するかどうかを検証します
  • is! - 変数が型に一致しないかどうかをチェックします
var number = 42;
var isInteger = number is int;        // true
var isNotString = number is! String;  // true

print('Is $number an integer? $isInteger');
print('Is $number not a string? $isNotString');

複数の型をチェックできます:

var value1 = 'Hello';
var value2 = 42;
var value3 = true;

print('$value1 is a String: ${value1 is String}');  // true
print('$value2 is a double: ${value2 is double}');  // false
print('$value3 is a bool: ${value3 is bool}');      // true

自分で試してみよう

void main() {
  // 型推論を使用して変数を作成する
  var number = ?;
  var decimal = ?;
  var text = ?;
  var active = ?;
  
  // 'is' 演算子を使用して型をチェックし、結果を出力する
  print("number is int: ${number ? int}");
  print("number is! String: ${number ? String}");
  
  print("decimal is double: ${decimal ? double}");
  print("decimal is! int: ${decimal ? int}");
  
  print("text is String: ${text ? String}");
  print("text is! bool: ${text ? bool}");
  
  print("active is bool: ${active ? bool}");
  print("active is! double: ${active ? double}");
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン