use_string_buffers
使用字符串缓冲区(StringBuffer)而不是 '+' 来组合字符串。
描述
#当在循环内部将值连接到字符串时,如果没有使用 StringBuffer 进行连接,分析器会产生此诊断信息。
示例
#以下代码会产生此诊断信息,因为字符串 result 是在 for 循环中通过重复连接计算出来的
dart
String f() {
var result = '';
for (int i = 0; i < 10; i++) {
result += 'a';
}
return result;
}常见修复
#使用 StringBuffer 计算结果
dart
String f() {
var buffer = StringBuffer();
for (int i = 0; i < 10; i++) {
buffer.write('a');
}
return buffer.toString();
}