prefer_foreach
僅在將函式套用至所有元素時使用 forEach
。
詳細資訊
#請務必在您僅打算將函式或方法套用至可迭代物件的所有元素時使用 forEach
。
當您僅打算將函式或方法套用至可迭代物件的所有元素時,使用 forEach
是一種良好的實務,因為它能使您的程式碼更簡潔。
不良範例
dart
for (final key in map.keys.toList()) {
map.remove(key);
}
良好範例
dart
map.keys.toList().forEach(map.remove);
注意: 將 for each 陳述式替換為 forEach 呼叫可能會在可迭代物件本身有副作用的情況下變更行為。
dart
for (final v in myList) {
foo().f(v); // This code invokes foo() many times.
}
myList.forEach(foo().f); // But this one invokes foo() just once.
啟用
#若要啟用 prefer_foreach
規則,請在您的 analysis_options.yaml
檔案中的 linter > rules 下新增 prefer_foreach
analysis_options.yaml
yaml
linter:
rules:
- prefer_foreach
如果您改用 YAML map 語法來設定 linter 規則,請在 linter > rules 下新增 prefer_foreach: true
analysis_options.yaml
yaml
linter:
rules:
prefer_foreach: true
除非另有說明,否則本網站上的文件反映 Dart 3.7.1 版本。頁面上次更新於 2025-03-07。 檢視原始碼 或 回報問題。