メインコンテンツにスキップ

read_potentially_unassigned_final

最終変数 '{0}' は、この時点で値が代入されていない可能性があるため、読み取ることができません。

説明

#

この診断は、宣言時に初期化されていない final ローカル変数が、コンパイラが参照される前に常に初期化されていることを証明できない時点で読み取られた場合に、アナライザーによって生成されます。

#

以下のコードでは、final ローカル変数 x が、まだ初期化されていない可能性がある時点で (3 行目で) 読み取られているため、この診断が生成されます。

dart
int f() {
  final int x;
  return x;
}

一般的な修正

#

変数が読み取られる前に初期化されていることを確認してください。

dart
int f(bool b) {
  final int x;
  if (b) {
    x = 0;
  } else {
    x = 1;
  }
  return x;
}