当前位置: 首页 > 面试题库 >

Java中Integer和int有什么区别?

公沈浪
2023-03-14
问题内容

例如,为什么可以这样做:

int n = 9;

但不是:

Integer n = 9;

你可以html" target="_blank">执行以下操作:

Integer.parseInt("1");

但不是:

int.parseInt("1");

问题答案:

int是原始类型。类型的变量int存储要表示的整数的实际二进制值。int.parseInt("1")没有意义,因为int它不是类,因此没有任何方法。

Integer是一个类,与Java语言中的其他类没有什么不同。类型变量Integer存储对对象的引用Integer,就像存储任何其他引用(对象)类型一样。Integer.parseInt("1")是对parseInt类的静态方法的调用Integer(请注意,此方法实际上返回an int而不是an Integer)。

更具体地说,Integer是一个具有单个type字段的类int。此类用于需要int与其他任何对象一样对待的地方,例如在通用类型或需要可为空的情况下。

请注意,Java中的每个原始类型都有一个等效的包装器类:

  • byte has Byte
  • short has Short
  • int has Integer
  • long has Long
  • boolean has Boolean
  • char has Character
  • float has Float
  • double has Double

包装器类从Object类继承,而原始类则没有。因此,它可以用于带有对象引用或泛型的集合中。

从Java 5开始,我们具有自动装箱功能,并且原始类和包装类之间的转换是自动完成的。但是要当心,因为这可能会引起细微的错误和性能问题;明确表示转化永远不会受到伤害。



 类似资料:
  • 本文向大家介绍int和Integer有什么区别?相关面试题,主要包含被问及int和Integer有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 考察点:数据类型 Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是I

  • 问题内容: 当我遇到Joel Spolsky的时候,我正在阅读《更多关于软件的 Joel》,他说了一种有关特定类型的程序员的一些知识,他们知道Java / C#(面向对象编程语言)中an int和an 之间的区别Integer。 那么区别是什么呢? 问题答案: 在Java中, “ int”类型是原始类型,而“ Integer”类型是对象。 在C#中, 类型与值类型相同,并且是值类型(即更像Java

  • 问题内容: 考虑以下基础: 任何人只能活在堆里 阵列IS-A 和 IS-A 我发现自己很难回答这样一个简单的问题: JVM和 JVM内部 有什么区别吗?还是仅在“编译时”才有意义? 问题答案: 运行时有所不同。 是原始int值的数组。是一个“对象”数组,其中包含对Integer对象的引用。 最重要的实际差异:无法持有价值观。 但是我仍然很困惑:是否仅存储原始值?如果是这样,这是否意味着原始类型可以

  • hibernate是面向对象的ORM,所以一般定义成封装类型,要看数据库中的定义,如果数据库中有对应字段存在null值,就要定义Integer。也可以定义基本类型,在配置文件中写清楚即可。

  • 本文向大家介绍请你说明一下int 和 Integer 有什么区别相关面试题,主要包含被问及请你说明一下int 和 Integer 有什么区别时的应答技巧和注意事项,需要的朋友参考一下 考察点:数据类型 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。 Java为每个原始类型提供了封装类。 原始类型封装类

  • 本文向大家介绍在 hibernate 中使用 Integer 和 int 做映射有什么区别?相关面试题,主要包含被问及在 hibernate 中使用 Integer 和 int 做映射有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 Integer 类型为对象,它的值允许为 null,而 int 属于基础数据类型,值不能为 null。