ジェネリックのメソッド
http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf
→5.Generic Methods
メソッドのみに指定するジェネリックの書き方があるそうです(クラスに指定するのでないやつ)。
メソッドの引数で?を使うと都合が悪いとき
static void fromArrayToCollection(Object[] a, Collection<?> c) { for (Object o : a) { c.add(o);//コンパイルエラー } }
これをこんな感じで書けるそうです。
static <T> void fromArrayToCollection(T[] a, Collection<T> c) { for (T o : a) { c.add(o); } }
なにこれ初耳。
コレクションフレームワーク使ってたら知らないうちに利用はしていたようだが、自分で定義したことはないっす。