質問: map.get(word); //出力の回数を制限するなら、ここで if (出現させたい件数 <= count)で可能 System.out.printf(format, word, count); System.out.println(); } } } ``` 試したこと デバッグで、listの53番目に"i"が格納されていることを確認いたしました。 なぜインデック番号53番目に入っているのに値が変更できないのでしょうか?
回答: あぁ。察し。 ``` int count = map.get(word); ``` で、NullPointerになってるのね。 mapは小文字なのに、wordは大文字のiなので、nullになって・・・ 例外は発生する行番号が出てるので、それ最初から情報出してくれれば、すぐに解決したのに。 -- 対応ですが、listのキーを変更せず表示するさいに、"i"のときだけ大文字に変換するか mapのキーを出力直前に以下のように置き換えればよいかと ``` map.put("I", map.get("i")); ```