【Flutter/Dart】引数の省略・初期値の指定|[]と{}の違い

関数の引数に初期値を指定し引数を省略可能にできる「オプション引数」の使い方を紹介します。

本記事では[]と{}のオプション引数の違いについて解説していきます。

\ 世界最大級のオンライン学習サービス /

目次

オプション引数 [] と {} の定義の違い

[]の場合

//初期値なし
void 関数名(引数, [オプション引数1, オプション引数2]) {
  処理
}
//初期値あり
void 関数名([オプション引数 = 値]) {
  処理
}

オプション引数にしたい引数を「[]」で囲みます。

オプション引数の初期値は「=」で指定できます。

{}の場合

//初期値なし
void 関数名(引数, {オプション引数1, オプション引数2}) {
  処理
}
//初期値あり
void 関数名({名前付き引数 = 初期値}) {
  処理
}

void 関数名({名前付き引数: 初期値}) {
  処理
}

オプション引数にしたい引数を「{}」で囲みます。

オプション引数の初期値は「=」または「:」で指定できます。Dart公式では「=」が推奨されています。

オプション引数 [] と {} の呼び出しの違い

[]の場合

関数名(通常引数の値);
関数名(通常引数の値, オプション引数の値); <- オプション引数を使用する場合

[]のオプション引数に値を渡したい場合は「第一引数, 第二引数, ...」と順に値を渡します。

{}の場合

関数名(通常引数の値);
関数名(通常引数の値, オプション引数名: 値); <- オプション引数を使用する場合

{}のオプション引数に値を渡したい場合は「引数名: 値」で任意の引数のみに値を渡すことができます。

  • URLをコピーしました!
目次