问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中 Integer是什么意思

发布网友 发布时间:2022-03-22 19:57

我来回答

4个回答

热心网友 时间:2022-03-22 21:26

int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:

int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象

1.Java 中的数据类型分为基本数据类型和复杂数据类型

int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null.

2.初始化时:

  inti=1;Integeri=newInteger(1);(要把integer当做一个类看);但由于有了自动装箱和拆箱  

  使得对Integer类也可使用:Integer i= 1;    

  int 是基本数据类型(面向过程留下的痕迹,不过是对java的有益补充),Integer 是一个类,是int的扩展,定义了很多的转换方法

  类似的还有:float Float;double Double;boolean Boolean等,而且还提供了处理 int 类型时非常有用的其他一些常量和方法

  举个例子:当需要往ArrayList,HashMap中放东西时,像int,double这种内建类型是放不进去的,因为容器都是装object的,这是就需要这些内建类型的外覆类了。

  Java中每种内建类型都有相应的外覆类。

  Java中int和Integer关系是比较微妙的。关系如下:

  1.int是基本的数据类型;

  2.Integer是int的封装类;

  3.int和Integer都可以表示某一个数值;

  4.int和Integer不能够互用,因为他们两种不同的数据类型;

  举例说明
private void test(Integer iAge){
int age=iAge;
}

test(null);//将会导致空指针异常

  并且泛型定义时也不支持int: 如:List<Integer> list = new ArrayList<Integer>();可以 而List<int> list = new ArrayList<int>();则不行

总而言之:如果我们定义一个int类型的数,只是用来进行一些加减乘除的运算or作为参数进行传递,那么就可以直接声明为int基本数据类型,但如果要像

对象一样来进行处理,那么就要用Integer来声明一个对象,因为java是面向对象的语言,因此当声明为对象时能够提供很多对象间转换的方式,与一些常用

的方法。自认为java作为一们面向对象的语言,我们在声明一个变量时最好声明为对象格式,这样更有利于你对面向对象的理解。

热心网友 时间:2022-03-22 22:44

这个不是关键字,是java的一个类。也就是int的包装类。int是基本数据类型,integer是引用类型,包含很多属性和方法,而int只是一个值,没有其他的任何方法和属性了追问integer i= new integer(10);
integer j=new integer(10);
System.out.print(i==j);
为什么是false?

追答因为此时的i和j是两个对象的引用,这样比较的是两个对象的引用,而不是具体的值。
JVM把内存分为不同模块。
integer i= new integer(10);
new Integer创建对象,存在堆内存里,存的也就是数值10。
而i是引用,存在栈内存里,存的是对象所在的堆内存的地址,也就是数值10在内存里的地址。
j也使用了new,所有创建了一个新对象,和i的对象地址就不一样。
而==比较的是栈内存里的值,所有结果是false。
int是直接将值存在栈内存里的,也就是将数值10直接存在栈内存里。所以int值用==比较的结果是true

热心网友 时间:2022-03-23 00:19

准确的说啊a == b比较的是栈内存的值,所以用int的话,值存在栈内存里,就是相等的。而Integer是对象。对象的值存在堆内存,栈内存存的是地址,由于实例化了两个对象,地址自然不同,所以是false。

热心网友 时间:2022-03-23 02:10

Integer 是对象类型 是int的封装类,int是java的基本数据类型,占固定位数,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
沙尘暴属于自然灾害吗 星配什么字好听男孩 女孩带星字叫什么名字好听又洋气 带星字优美人名 星字如何取名 带星字的名活泼的 非常潮流的星字名 成华区社保局地址 有什么平价又好用的防晒霜值得安利? 有哪些性价比比较高的物理防晒霜可以安利? integer是什么意思? integer中文是什么意思 Integer 是什么类型? SQL SERVER中,对于bigint的负边界值,为什么使用科学计数法时,超过负边界值不报错呢? var result = new BigInt(); result.digits[0] = 1;什么意思 declare aid bigint default 0 什么意思 SQL数据类型:bigint tinyint int bit smallint money samllmoney 分别是什么意思 jdbctype=bigint在sql语句啥意思 什么是BIGINT在C#中的相同 在数据库里面,int字段默认占4个字节,int(11)啥意思?bigint(11)啥意思? mysql 数据类型 BIGINT(1) 表示的是该数据类型指定的显示宽度 这里的显示宽度是什么意思? bigint占8个字节是8位数的意思么? mysql中int,bigint,smallint 和 tinyint的区别与长度的含义 vivo手机nfc怎么充值公交卡? 怎么在手机充公交卡 用手机怎么充值公交卡 公交卡在手机怎么充值 北京公交卡在手机上怎么充值 在手机上如何充公交卡 用手机怎么往乘车卡里充钱 integer什么意思? 苹果lte是什么 苹果手机蜂窝数据里边有一个LTE是什么意思 苹果13LTE什么意思 苹果手机出现LTE是什么原因 苹果信号栏显示LTE是在国外吗 苹果手机移动蜂窝里面的“LTE”是什么意思? 苹果手机5信号旁边出现了LTE是什么意思 iphone显示lte而不是显示4g而且接不了电话 苹果手机移动蜂窝里面的LTE 是什么意识 苹果手机信号格那里显示LTE是什么意思而且打电话是关机? 苹果WIFI版和LTE 版什么意思 苹果数据连接里的LTE是什么? 6S(美版)为什么不显示4G,显示LTE是啥意思?。 苹果xr数据为什么是lte 苹果7puts 开机显示4glte是什么意思 苹果 7puts 开机显示4glte是什么意思? 检测到原深感摄像头出现问题怎么办? 检测到原深感摄像头出现问题怎么办? 原深感摄像头出现问题 面容id已停用怎么办?