字符串連接我有一些代碼看起來像這樣(我換成普通的人我的業務變量):假陽性SonarQube違反了環路
Map<String, String> map = new HashMap<String, String>();
for (int i = 1; i < 10; i++) {
String suffix1 = retrieveValue1(i);
String suffix2 = retrieveValue2(i);
String tag = "prefix";
if (suffix1 != null) {
tag += suffix1;
}
else {
tag += suffix2;
}
map.put(tag.toUpperCase(), "on");
}
我有什麼錯誤,我收到以下SonarQube違規:
性能 - 法會連接使用+在一個循環
在我看來這是個假陽性(因爲沒有R串eal循環在這裏的字符串)但我想先仔細檢查。
我找不到任何與我的朋友Google相似的情況。
這是假陽性,還是在我的循環中有真正的性能損失?
無論何時您的代碼執行了'tag + = suffix1',它都會創建多個String實例,並且在循環中也會這樣,因此違規。 – rd22