为什么Java中的泛型使用类而不是基本类型?
例如,这工作正常:
List<Integer> foo = new ArrayList<Integer>();
Run Code Online (Sandbox Code Playgroud)
但这是不允许的:
List<int> bar = new ArrayList<int>();
Run Code Online (Sandbox Code Playgroud) Java不允许在通用数据结构中使用原始类型.例如,不允许使用ArrayList <int>.原因是,原始类型不能直接转换为Object.但是Java 1.5确实支持自动装箱,而包装类在通用数据结构中工作.那么为什么编译器无法将其自动设置为ArrayList <Integer>?为什么这不起作用还有其他原因吗?