Menu
Coddy logo textTech

キーの存在確認

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

containsKey() メソッドは、マップに特定のキーが含まれているかどうかをチェックし、ブール値の結果を返します。これにより、値にアクセスしようとする前にキーが存在するかどうかを確認できます。

学生のスコアのマップを作成:

Map<String, int> scores = {
  'Alice': 95,
  'Bob': 85,
  'Charlie': 90
};

マップにキーが存在するかどうかを確認:

bool hasAlice = scores.containsKey('Alice');
print('Map contains Alice: $hasAlice');

上記のコードを実行した後、出力は次のようになります:

Map contains Alice: true

存在しないキーをチェックする:

bool hasDavid = scores.containsKey('David');
print('Map contains David: $hasDavid');

上記のコードを実行した後、出力は次のようになります:

Map contains David: false
challenge icon

チャレンジ

初心者

このチャレンジでは、containsKey メソッドを使用して Map にキーが存在するかどうかを確認する練習をします。このメソッドは、map が指定されたキーを含む場合に true を返し、そうでなければ false を返します。

userInfo マップにキー 'email' が含まれているかどうかを確認するコードを完成させてください。含まれている場合、message 変数を 'Email found!' に設定し、そうでなければ 'Email not found!' に設定してください。

期待される出力:

Email found!

チートシート

containsKey() メソッドは、マップに特定のキーが含まれているかどうかをチェックし、ブール値の結果を返します:

Map<String, int> scores = {
  'Alice': 95,
  'Bob': 85,
  'Charlie': 90
};

bool hasAlice = scores.containsKey('Alice');
print('Map contains Alice: $hasAlice'); // true

bool hasDavid = scores.containsKey('David');
print('Map contains David: $hasDavid'); // false

自分で試してみよう

void main() {
  // このマップはすでに定義されています
  Map<String, String> userInfo = {
    'name': 'John',
    'email': 'john@example.com',
    'address': '123 Main St'
  };
  
  // TODO: userInfo マップにキー 'email' が含まれているかチェックする
  // 含まれていれば、message を 'Email found!' に設定する
  // そうでなければ、message を 'Email not found!' に設定する
  String message = '';
  
  // これで結果が表示されます
  print(message);
}
quiz icon腕試し

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

基礎のすべてのレッスン