gpt4 book ai didi

Java - 泛型类型和集合

转载 作者:搜寻专家 更新时间:2023-10-31 20:17:25 25 4
gpt4 key购买 nike

<分区>

我正在尝试了解泛型类型的使用,但在试验某些代码行时我注意到了一些奇怪的事情。

第一段代码在名为“A”的类中:

public void func(int k, List list) {
list.add(9);
list.add(true);
list.add("a string");
}

第二段代码在不同的类中,在主函数内:

List<Integer> arr = new ArrayList<Integer>();
arr.add(14);
System.out.println(arr.toString());
a.func(8, arr);
System.out.println(arr.toString());

运行代码会打印出以下行:

[14]

[14, 9, true, a string]

这让我很困惑,因为 arr是一个 ArrayList类型 Integer ,它怎么能包含 boolean 类型的对象呢?和 String ?函数func中是否有列表的转换到原始类型(这意味着它变成通用类型 Object )?如果是这样,那怎么可能,因为您不能这样做,例如:List<Integer> arr = new ArrayList<Object>();

希望对此进行一些澄清,也许它会帮助我更好地理解泛型类型这个主题。谢谢!

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com