Java中的整数和整数有什么区别?
例如,为什么你可以做:
int n = 9;
但不是:
Integer n = 9;
你可以做:
Integer.parseInt("1");
但不是:
int.parseInt("1");
例如,为什么你可以做:
int n = 9;
但不是:
Integer n = 9;
你可以做:
Integer.parseInt("1");
但不是:
int.parseInt("1");
int
是基元类型。类型的变量存储要表示的整数的实际二进制值。 没有意义,因为 不是一个类,因此没有任何方法。int
int.parseInt("1")
int
Integer
是一个类,与 Java 语言中的任何其他类没有什么不同。类型的变量存储对对象的引用,就像任何其他引用(对象)类型一样。 是从类中调用静态方法(请注意,此方法实际上返回 an 而不是 an )。Integer
Integer
Integer.parseInt("1")
parseInt
Integer
int
Integer
更具体地说,是具有单个类型字段的类。此类用于需要像对待任何其他对象一样对待的对象的情况,例如在泛型类型或需要可空性的情况下。Integer
int
int
请注意,Java 中的每个基元类型都有一个等效的包装类:
byte
有Byte
short
有Short
int
有Integer
long
有Long
boolean
有Boolean
char
有Character
float
有Float
double
有Double
包装类继承自 Object 类,而基元则不继承。因此,它可以在具有对象引用或泛型的集合中使用。
从java 5开始,我们有自动装箱,并且基元和包装类之间的转换是自动完成的。但是,请注意,因为这可能会引入微妙的错误和性能问题。明确介绍转化永远不会有坏处。
Integer 几乎只是基元类型 int 的包装器。它允许您使用 Integer 类的所有函数,使您的生活更轻松一些。
如果你是Java的新手,你应该学会欣赏Java文档。例如,您想知道的有关整数类的任何内容都会详细记录下来。
这直接来自 Integer 类的文档:
Integer 类将基元类型 int 的值包装在对象中。Integer 类型的对象包含其类型为 int 的单个字段。