今天我正在查看以下Android源代码:
该类型声明为:
public class IntArrayEvaluator implements TypeEvaluator<int[]>
我对Java泛型的理解是不支持原始类型和数组。
我的理解是否正确?
如果我是正确的,这是Android的Java实现的独特之处吗?
答案 0 :(得分:1)
支持数组,因为内部将在Heap中为所有Primitive数组创建一个对象作为包装类型。
但原始类型不适用。
答案 1 :(得分:1)
不,你不对。允许int[]
作为Android和标准Java中的类型参数。这是因为int[]
是引用类型。另一方面,int
是基本类型,不允许作为类型参数。
答案 2 :(得分:1)
int[]
是引用类型,因此可以用作泛型类型参数;这与原始int
类型不同。 Android没有什么特别之处。