ace*_*ace 5 java generics collections reference primitive-types
我无法找出原因的ArrayList < INT >是不是 不允许,但ArrayList的< INT [] >是允许的。
我的印象是Collections中不允许使用原始数据类型,那么为什么要这样合法呢?
泛型仅适用于引用类型(任何为Object的类型)。
原始int不是引用类型。
int[]是,因为任何数组也是对象。
处理多个int值的正确方法是仅 使用int[](而不是将它们放入列表中)或使用List<Integer>。真正选择哪一个取决于您的确切用例。
一个array在Java是一个对象。在Java中,我们可以使用new运算符创建数组,并且我们知道每个对象都是使用new运算符创建的。因此,我们可以说这array也是一个对象。
收集仅适用于Object。int是原始数据类型,int[]是对象。
这是ArrayList<int>不允许但ArrayList<int[]>允许的原因。
| 归档时间: |
|
| 查看次数: |
177 次 |
| 最近记录: |