して、このラムダを交換し、私はソナーに次の警告取得しています:SONAR:メソッド参照
メソッド参照
コードでこのラムダを置き換えです:
私は乗り越えることができますどのようにprotected List<Test> getTests(List<String> testIds) {
List<Test> tests = new ArrayList<>();
if (!CollectionUtils.isEmpty(testIds)) {
testIds.stream().forEach(eachTestId -> tests.add(getTest(eachTestId)));
}
return tests;
}
この警告?
が、全体ストリームの使用量は、その目的に反していますAPI。 'forEach'を使ってアクションを実行したいだけなら、コレクションに対して' forEach'を呼び出すことができます。どちらの場合でも、空のコレクションを確認する必要はありません。 'null'テストに' CollectionUtils.isEmpty'だけを使用している場合は、代わりにクリーン 'null'チェックを実行する必要があります。しかし、実際には、 'forEach'を使用する代わりに' return testIds.stream()。map(id - > getTest(id)).collect(Collectors.toList()); *その後、実際には 'getTest'のメソッドリファレンスを使用することができます – Holger
SonarQubeのJavaアナライザーの開発者として:警告は間違っていますが、使用しているJavaアナライザのバージョンは正確ですか?これは最新のリリースで修正される可能性が最も高いためですか? – benzonico