是否可以将“空”值分配给整数数组中的单个元素?
例如:
int[] num = new int[3];
num[0] = 23;
num[1] = null;
num[2] = 12
当我尝试这个时,它给出了一个错误即。 incompatible types: <nulltype> cannot be converted to int
但是当我在 Object 数组中尝试相同时,我可以为数组中的单个元素分配一个“空”值。
下面是代码:
public class Person {
private String name;
private int age;
public Person(String n, int a){
name = n;
age = a;
}
public static void main(String[] args) {
Person[] p = new Person[3];
p[0] = new Person("John", 17);
p[1] = null;
p[2] = new Person("Mark", 18);
}
}
Object 数组中允许使用“null”,而 int 数组中则不允许。这是为什么?这两种数组类型有什么区别?我认为 Java 中的所有数组都是 Object 类型。如果我在这里错了,请纠正我。
原始 Java 整数不能是null
,但Integer
包装原始类型的类int
可以是null
。以下是一种可供考虑的选择:
Integer[] num = new Integer[3];
num[0] = 23;
num[1] = null;
num[2] = 12;
Java 中的装箱规则使其在大多数情况下非常易于使用int
且Integer
可互换。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句