toSet()
オブジェクトを受け取り、 を返すという名前の静的ユーティリティ メソッドがありますSet
。
public static <T> Set<T> toSet(T item, T... otherItems) {
Set<T> items = new HashSet<T>();
items.add(item);
items.addAll(Arrays.asList(otherItems));
return items;
}
Set
メソッドは他のオブジェクトで正常に動作しますが、 ofを作成したい場合はコンパイルが発生しClass<?>
ます。
Set<String> strings = toSet("OK", "This works well", "No problem");
Set<Integer> numbers = toSet(1, 2, 3, 4, 5);
しかし
Class<?> test = String.class;
Set<Class<?>> entities = toSet(test);
お譲り致しType mismatch: cannot convert from Set<Class<capture#5-of ?>> to Set<Class<?>>
ます。
ここで何か間違ったことをしていますか?キャストせずにこれを達成するにはどうすればよいですか?
ありがとうございます。