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

Java基本类型:int vs. Integer

翟嘉志
2023-03-14
问题内容

我对何时在Java中使用原始类型与非原始类型(?)类型(即int与Integer)感到困惑。我意识到在某些地方您不能使用基本类型(例如,在使用泛型时)。但是在“普通”代码中呢?使用非原始类型是否会降低性能?使用Android时该如何处理?

***我的问题与这个问题非常相似,该问题是由以下海报之一发现的。链接问题的答案提供了对该问题的更多见解,以下将不进行介绍。

***“非原始”类型正式称为参考类型。


问题答案:

简短答案:An int是一个数字;an
Integer是可以引用包含数字的对象的指针。使用Integer算术涉及更多的CPU周期和占用更多的内存。An
int不是对象,不能传递给任何需要对象的方法(就像您对泛型所说的一样)。



 类似资料:
  • 前面我们学习了变量,每个变量都是有数据类型的。在 Java 中,一共有两大数据类型: 基本数据类型(内置数据类型) 引用数据类型 本小节,我们将主要介绍基本数据类型,除了我们在示例中经常用到的 int 类型外,Java 语言还有其他 7 种基本数据类型。它们由语言预先定义,也称内置数据类型,顾名思义,它们是 Java 语言中最基本的数据类型。另外注意:引用数据类型并不属于基本数据类型的范畴,我们将

  • 着色器语言GLSL的基本数据类型和C语言一样具有常见的整型数int、浮点数float和布尔值bool类型数据。 关键字 数据类型 值 bool 布尔值 布尔变量值为true或false int 整型数 值为整数,比如0,1,2,3... float 单精度浮点数 浮点数用小数点表示,比如0.6,3.14,2.8 // bool关键字声明一个数据类型是布尔值的变量,并赋值为true bool lig

  • 向新手介绍Go语言时,解释一下Go中各种类型变量在内存中的布局通常有利于帮助他们加深理解。 先看一些基础的例子: 变量i属于类型int,在内存中用一个32位字长(word)表示。(32位内存布局方式) 变量j由于做了精确的转换,属于int32类型。尽管i和j有着相同的内存布局,但是它们属于不同的类型:赋值操作 i = j 是一种类型错误,必须写成更精确的转换方式:i = int(j)。 变量f属于

  • 基本类型   Go语言的基本类型并不多,主要有布尔类型、byte类型、rune类型、数字型和string类型。   我们在这里主要讲解布尔类型、数字型和string类型。   在具体讲解前要强调的是:Go 是强类型语言,因此不会进行隐式转换,任何不同类型之间的转换都必须显式说明。Go 不存在像 C 和 Java 那样的运算符重载,表达式的解析顺序是从左至右。还有就是,只有两个类型相同的值才可以进行

  • Object Name Description Concatenable 将类型标记为支持“串联”(通常是字符串)的mixin。 Indexable 将类型标记为支持索引操作(如数组或JSON结构)的混合。 NullType 未知类型。 TypeEngine 所有SQL数据类型的最终基类。 Variant 一种包装类型,它根据所使用的方言在各种实现中进行选择。 class sqlalchemy.t

  • 本文向大家介绍Java的布尔类型基本介绍,包括了Java的布尔类型基本介绍的使用技巧和注意事项,需要的朋友参考一下 Java 有一种表示逻辑值的简单类型,称为布尔型。它的值只能是真或假这两个值中的一个。它是所有的诸如a下面的程序说明了布尔类型的使用: 这个程序的运行结果如下所示: 关于这个程序有3件有趣的事情要注意。首先,你已经看到,当用方法println ( ) 输出布尔的值时,显示的是“tru