gpt4 book ai didi

java - 将 Integer 添加到 String 的通用 ArrayList 时出现编译时错误

转载 作者:行者123 更新时间:2023-12-01 06:38:17 24 4
gpt4 key购买 nike

我知道这个问题之前已被问过多次,但我正在寻找基于类型删除的答案。

为什么编译器在添加 Integer 时会出错至ArrayList<String> ?我想通过 add 的类型删除和字节码来理解这一点ArrayList中的方法。

最佳答案

这与类型删除或字节码无关。编译器在删除泛型类型参数并生成字节代码之前会向您显示此错误。

添加 Integer 时到ArrayList<String> ,编译器只是给你一个错误,因为 Integer不是 String 的子类.

泛型只是在编译时添加一层类型安全。如果您使用原始 ArrayList而不是ArrayList<String> ,您可以同时添加 StringInteger发送至您的ArrayList 。但是,无论您是否使用ArrayList,生成的字节码都是相同的。或ArrayList<String> .

关于java - 将 Integer 添加到 String 的通用 ArrayList 时出现编译时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27243472/

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