我试图定义一个 int 类型的通用 LinkedList 但它给我一个编译错误
List<int> I = new LinkedList<int>();
你必须使用包装类来做到这一点。
List<Integer> I = new LinkedList<Integer>();
您可以在此链接列表中插入一个int
,因为自动装箱会自动从中创建一个Integer
对象int
并将其添加到 LinkedList。
您不能将原始类型用作泛型类型。如果您真的想这样做,那就是包装类(Integer
,Float
等)的用途。你可以这样做:
List<Integer> I = new LinkedList<Integer>();
int
由于自动装箱,您仍然可以将s 放入列表中。如果您尝试在需要aint
的情况下使用Integer
Integer
使用 ,则会自动创建Integer.valueOf
的并改为使用。
此外,在 Java 7 中,您可以使用菱形运算符并使用以下代码:
List<Integer> I = new LinkedList<>();
这样做没有任何好处,只是打字速度更快。