メソッドがパラメーターの1つであるのを見るたびに、次のような出力パラメーターです
void addTokenErrorsToReport(List<String> tokens, Map<String, Integer> report)
これは明らかに間違っていると感じています。私の見解では、一般的にパラメーターは不変であり、メソッド内で変更されるべきではありません。たとえば、上記のメソッドは次のように書き換えることができます。
Map<String, Integer> createTokenErrorsReport(List<String tokens)
返さMap
れたものは、元のレポート Map とマージできます。
この仮定は正しいですか?それとも、両方のバージョンが等しく受け入れられますか?