次のようなことをしたいと思います。
public class Test {
public static void main(String[] args) {
Map<String, Set<String>> map = new HashMap<String, Set<String>>();
map.put("key1", new HashSet<String>());
Set<String> theSet = getObjectAs(map, ***Set<String>.class***);
}
private static <T> T getObjectAs(Object object, Class<T> cls){
return cls.cast(object);
}
}
しかし、これは機能しません。パラメータ化されているため、.class (太字で表示) を使用してその Set からクラス オブジェクトを取得できません。
タイプが異なる場合がありますが(常に文字列のセットであるとは限りません)、私が知っていてパラメーターとして与えることができるセットを返すようにそのメソッドを作成したいと思います。
このようなことを行う別の方法はありますか?