不変なコレクション(List・Map)についてメモ。
空のリストやマップを表すEMPTY_LISTやEMPTY_MAPなんてインスタンスが標準で用意されてたのか! 知らなかった~><
毎回new ArrayList(0)とか作って返してたよ…。(唯一の空リストのつもりで自前でfinal Listを用意しても、返した先でadd()出来ちゃうから)
それに、変更できないコレクション(add()やset()が出来ないリスト、put()が出来ないマップ)なんてのも用意されてたんだ…。
もっと早く知ってれば正に使いたいシーンがあったのに…。
あと、1個だけしか値を持てない不変コレクション(singleton)なんてのもあるんだな。
これは別に今のところ使いたいとは思わないけどw
改めてCollectionsクラスのJavadocを見てみると、JDK1.5や1.6で追加されたものもあるし、色々なメソッドがあるんだなぁ。sort()やsynchronized系くらいしか知らなかったよ。
…shuffle()なんて、何に使うんだろう?^^;