目次

unnecessary_final

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

このルールは Dart 2.7 以降で利用可能です。

このルールには、クイックフィックスが利用可能です。

非互換のルール:prefer_final_localsprefer_final_parameters

詳細

#

ローカル変数を宣言するときは、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ルールを有効にするには、analysis_options.yamlファイルのlinter > rulesの下にunnecessary_finalを追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_final