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

unnecessary_final

安定版
修正が利用可能です

ローカル変数に final を使用しないでください。

詳細

#

ローカル変数を宣言するときは、final ではなく var を使用してください。

Effective Dart によると、広く使われているスタイルは 2 つあります。このルールは var スタイルを強制します。final を優先する代替スタイルについては、代わりに prefer_final_localsprefer_final_in_for_each を有効にしてください。

フィールドについては、final が常に推奨されます。ルール prefer_final_fields を参照してください。

悪い例

dart
void badMethod() {
  final label = 'Final or var?';
  for (final char in ['v', 'a', 'r']) {
    print(char);
  }
}

良い例

dart
void goodMethod() {
  var label = 'Final or var?';
  for (var char in ['v', 'a', 'r']) {
    print(char);
  }
}

互換性のないルール

#

unnecessary_final ルールは、次のルールと互換性がありません。

有効にする

#

unnecessary_final ルールを有効にするには、analysis_options.yaml ファイルの linter > rules の下に unnecessary_final を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_final

代わりに YAML マップ構文を使用してリンター ルールを構成している場合は、linter > rules の下に unnecessary_final: true を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_final: true