必須の名前付き引数
CoddyのDartジャーニー「基礎」セクションの一部 — レッスン 74/94。
required キーワードは、関数を呼び出す際に名前付きパラメータを提供することを強制します。これがない場合、名前付きパラメータはデフォルトでオプションです。
必須の名前付きパラメータを持つ関数を作成する:
void createUser({required String name, required int age}) {
print('User created: $name, $age years old');
}
すべての必要なパラメータで関数を呼び出してください:
void main() {
createUser(name: 'Alex', age: 30);
}
上記のコードを実行した後、出力は次のようになります:
User created: Alex, 30 years old必須のパラメータを省略しようとすると、Dart はエラーを表示します:
// This would cause an error:
// createUser(name: 'Alex'); // Missing required parameter 'age'
チャレンジ
初心者このチャレンジでは、Dartの名前付きパラメータでrequiredキーワードを使用する練習をします。requiredキーワードは、関数を呼び出す際に名前付きパラメータを提供しなければならないことを保証します。
createUserProfile関数を完成させ、nameとageパラメータの両方を必須にするためにrequiredキーワードを追加してください。
チートシート
required キーワードは、関数を呼び出す際に名前付きパラメータを提供することを強制します。それがない場合、名前付きパラメータはデフォルトでオプションです。
必須の名前付きパラメータを持つ関数を作成します:
void createUser({required String name, required int age}) {
print('User created: $name, $age years old');
}すべての必須パラメータで関数を呼び出します:
createUser(name: 'Alex', age: 30);必須パラメータを省略すると、コンパイルエラーが発生します。
自分で試してみよう
void main() {
// この関数呼び出しはすでに設定済みです
String profile = createUserProfile(name: 'Alice', age: 30);
print(profile);
// 必須パラメータが欠けている場合に何が起こるかを見るために、この行のコメントを解除してください
// String invalidProfile = createUserProfile(name: 'Bob');
}
// TODO: 両方のパラメータを必須にするために 'required' キーワードを追加してください
String createUserProfile({String name, int age}) {
return 'User Profile: $name, $age years old';
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。