在Java中将字符串转换为泛型类型参数



我想写一个通用程序,从用户接收字符串,并使用反射创建该类型的容器。应该是在

这行
public static void main(String []args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter the type you want to use ");
String typeName = scanner.nextLine();
Set<????> mySet = new HashSet(); 
}

我应该在????部分?这可能吗?

我不太确定你想达到什么目的。我假设,在创建了typeNameSet之后,代码将继续。
About泛型。编译完代码后,所有关于泛型的信息都消失了。在运行时,当你创建了typeName类型,对于程序来说,它只是一个对象。
泛型只是为了在编程时,清楚地知道您正在处理哪种类型的Object,这样您就不需要强制转换,编译器可以检查这通常是否有效。
如果你想稍后在对象上调用一些东西,你需要使用反射,除非你做了一些更精确的信息,你正在处理哪种Object

最简单的东西就是Object

相关内容

  • 没有找到相关文章

最新更新