Java基础 - Integer和int的区别

17 篇文章 3 订阅
订阅专栏

一、int和Integer的区别

两者的区别主要体现在以下几个方面:
1、数据类型不同:int 是基础数据类型,而 Integer 是包装数据类型;
2、默认值不同:int 的默认值是 0,而 Integer 的默认值是 null;
3、内存中存储的方式不同:int 在内存中直接存储的是数据值,而 Integer 实际存储的是对象引用,当 new 一个 Integer 时实际上是生成一个指针指向此对象;
4、实例化方式不同:Integer 必须实例化才可以使用,而 int 不需要;
5、变量的比较方式不同:int 可以使用 == 来对比两个变量是否相等,而 Integer 一定要使用 equals 来比较两个变量是否相等。

二、 Integer、new Integer()和int的比较

1、两个new Integer()变量比较,永远是false

因为new生成的是两个对象,其内存地址不同
在这里插入图片描述

2、Integer变量 和 new Integer() 变量比较 ,永远为 false

因为 Integer变量 指向的是java常量池中的对象,而 new Integer() 的变量指向堆中新建的对象,两者在内存中的地址不同。
在这里插入图片描述

3、两个Integer 变量比较,如果两个变量的值在区间-128到127 之间,则比较结果为true,如果两个变量的值不在此区间,则比较结果为 false。

在这里插入图片描述
分析:

Integer i = 100 在编译时,会翻译成为 Integer i = Integer.valueOf(100),而 java 对 Integer类型的 valueOf 的定义如下

在这里插入图片描述
java对于-128到127之间的数,会进行缓存。
所以 Integer i = 127 时,会将127进行缓存,下次再写Integer j = 127时,就会直接从缓存中取,就不会new了。

4、int变量与 Integer、new Integer()比较时,只要两个的值是相等的,则为true.

因为包装类Integer 和 基本数据类型int 比较时,java会自动拆包装为int ,然后进行比较,实际上就变为两个int变量的比较。

在这里插入图片描述

三、总结

Integer 是 int 的包装类,它们的区别主要体现在 5 个方面:数据类型不同、默认值不同、内存中存储的方式不同、实例化方式不同以及变量的比较方式不同。包装类的存在解决了基本数据类型无法做到的事情泛型类型参数、序列化、类型
转换、高频区间数据缓存等问题。

IntInteger区别
zxx862309181的博客
04-13 440
转自java面试题之intInteger区别 - 果冻迪迪 - 博客园 (cnblogs.com) intInteger区别 1、Integerint的包装类,int则是java的一种基本数据类型 2、Integer变量必须实例化后才能使用,而int变量不需要 3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值 4、Integer的默认值是null,int的默认值是0 延伸: 关于Integerint的比较...
详解JavaintInteger区别
08-26
主要介绍了JavaintInteger区别文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
简单了解javaintInteger区别
08-25
主要介绍了简单了解javaintInteger区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
JAVA包装类——以Integer为例
最新发布
l_tian_tian_的博客
09-09 292
Integer类包装一个对象中的原始类型int的值。类型为Integer的对象包含一个单一字段,其类型为int。此外,该类还提供了一些将int转换为String和String转换为int,以及在处理int时有用的其他常量和方法。
Integerint区别
牛栏山矿泉水
02-24 667
Integerint区别 1、Integerint提供的封装类,而intJava的基本数据类型;2、Integer默认值是null,而int默认值是0;3、声明为Integer的变量需要实例化,而声明为int的变量不需要实例化;4、Integer是对象,用一个引用指向这个对象,而int是基本类型,直接存储数值。...
一、Java基础知识-1.1数据类型
weixin_61769871的博客
08-23 1013
Java面试八股文、Java基础知识、数据类型
Integerint区别
gkgsn的专栏
05-21 461
Integerint区别
JavaIntegerint区别
理想万岁万万岁的博客
12-20 1649
各位小伙伴们无论在工作还是学习中,与Integer都有着过硬的交情,我说的没错吧,大家都知道他可以表示一个整数,而且也知道可以表示整数的还有int,只是使用Integer的次数要比int多得多,今天我们就来好好探究一下Integerint区别以及更深处的知识。
javaIntegerint有什么区别
周祥平程序专栏
12-03 796
3. 操作符支持:对于int类型我们可以使用比较操作符==来比较两个变量的值是否相等,而对于Integer对象,使用==比较得到的是两个Integer对象的引用地址是否相等,比较的是两个对象的地址而非真正的数值。但是Integer类型的值可以为null,因此在使用Integer类型时,需要对null做特殊处理,否则可能会产生`NullPointerException`。1. 基本类型与引用类型:int是基本数据类型,直接存储数值,而Integer是对象,它的实例是引用类型,存储的是对象的引用。
Java intInteger区别
_Adler.
10-04 311
1、Integerint的包装类,int则是java的一种基本数据类型  2、Integer变量必须实例化后才能使用,而int变量不需要  3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值  4、Integer的默认值是null,int的默认值是0   数组变量的声明,和创建数组可以用一条语句完成,如下所示: d...
JavaInteger两种转int方法比较
08-31
Java编程语言中,将`Integer`对象转换为基本数据类型`int`有两种常见的方法:`Integer.parseInt()`和`Integer.valueOf()`。理解这两种方法的区别和应用场景对于编写高效且正确的Java代码至关重要。 首先,我们来...
JAVA-intInteger区别
05-25
Java编程语言中,`int`和`Integer`都是用于表示整数值的数据类型,但它们之间存在着显著的差异。理解这些区别对于编写高效且优化的Java代码至关重要。 首先,`int`是Java中的原始数据类型(Primitive Type),它...
java 定义integer64位_Java-intInteger区别
weixin_42560991的博客
02-17 1835
转载:https://blog.csdn.net/tongsiw/article/details/89851213在说intInteger区别之前,先要弄清楚两个问题:一、java基本数据类型及其封装类二、java自动拆箱和自动装箱一、java基本数据类型及其封装类数据类型字节大小封装类byte8位Byteshort16位Shortint32位Intergerlong64位Longfloat3...
java-基础 IntegerInt的比较分析
Ma_Sir的博客
01-18 260
java-基础 IntegerInt的比较分析 第一: Ingeter是int的包装类,int的初值为0,Ingeter的初值为null 第二:需要明确的一点是,包装型(Integer)和基本型(int)比较会自动拆箱(jdk1.5以上)。 看代码 Integer a1 = 128; Integer a2 = 128; int a11 = 128...
Java基础-Integer的==和equals方法
youchitang的博客
08-05 2848
Java基础-Integer的==和equals方法 1、首先说下 equals 方法: ​ equals 方法接受的参数为 Object 类型 equals(Object obj),首先会判断参数中的对象 obj 是否是 Integer 同类型的对象,如果是同类型的话再判断值是否相同,如果值也相同的话则返回 true, 值不同的话会返回 false,如果 obj 不是 Integer 类型的话,会返回 false; 基本类型(值类型)之间无法使用 equals 进行比较; 如果 equals 参数为值类
intInteger区别
aiqi1964的博客
07-23 278
intInteger区别 1、Integerint的包装类,int则是java的一种基本数据类型2、Integer变量必须实例化后才能使用,而int变量不需要3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值4、Integer的默认值是null,int的默认值是0 转载于:https://www.c...
Java进阶(三十五)java intinteger区别
热门推荐
IT全栈 华强工作室
07-19 6万+
java intinteger区别前言 intinteger区别从大的方面来说就是基本数据类型与其包装类的区别int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象。 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为
javaintinteger区别
05-17
Java中的 `int` 和 `Integer` 都是用来表示整数的数据类型,但它们之间存在一些区别。 1. `int` 是 Java 的基本数据类型,而 `Integer` 是一个对象类型。基本数据类型可以直接存储在内存中,而对象类型需要在堆中分配内存空间。 2. `int` 可以直接进行算术运算,而 `Integer` 需要先进行拆箱操作,将其转换为基本数据类型才能进行算术运算。 3. `int` 的默认值是 0,而 `Integer` 的默认值是 `null`。 4. `int` 的取值范围为 -2147483648 到 2147483647,而 `Integer` 的取值范围也是相同的,但在使用 `Integer` 时需要注意可能会发生 `NullPointerException`。 总的来说,`int` 是一种基本数据类型,适用于需要高效处理整数的场景,而 `Integer` 是一种对象类型,在需要将整数作为对象进行处理时使用。
写文章

热门文章

  • MySQL中的limit用法详解 165793
  • MySQL中having的用法 67806
  • HashMap详解 51859
  • Java基础 - Integer和int的区别 34145
  • SpringCloud - Nacos详解 26566

分类专栏

  • 消息中间件 8篇
  • 容器化技术 7篇
  • 电商项目 7篇
  • Mybatis 11篇
  • JVM虚拟机 6篇
  • 解决方案 2篇
  • Redis 9篇
  • 设计模式 2篇
  • SpringBoot 3篇
  • 分布式 2篇
  • java工具类 9篇
  • Spring 10篇
  • java集合 2篇
  • SpringCloud 5篇
  • 数据结构与算法 3篇
  • 重构 1篇
  • 任务调度 1篇
  • 操作系统 1篇
  • java基础 17篇
  • MySQL 15篇
  • log日志技术 3篇
  • Nginx 1篇
  • 性能调优 1篇
  • 并发编程 4篇

最新评论

  • 如何解决java程序CPU负载过高问题

    天涯一殇: windows的使用 "{0:x}" -f 61200

  • MySQL中的limit用法详解

    iamnotacoder: 执行一下就清楚了表情包

  • 三、Kafka副本

    CSDN-Ada助手: 云原生入门 技能树或许可以帮到你:https://edu.csdn.net/skill/cloud_native?utm_source=AI_act_cloud_native

  • 解决finalshell无法连接,一直提示登陆密码

    挨打且不服66: 请问连接不上怎么切换root模式

  • SpringCloud - Nacos详解

    qianguichao: 运维的我看头都大

大家在看

  • 中英双语酒店管理系统——pms系统,海外版
  • 论文 Python 实现WOA-CNN-BiGRU-Attention数据分类预测 64
  • 手环押金原路退回系统——足浴店——东方仙盟

最新文章

  • 三、Kafka副本
  • Kafka生产者(二)
  • docker环境安装kafka/Flink/clickhouse镜像
2024年23篇
2023年11篇
2022年119篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家龙井道路玻璃钢花盆描玻璃钢卡通雕塑厂家乐山玻璃钢雕塑定做仿真玻璃钢恐龙雕塑河南步行街玻璃钢雕塑定制湖南创意玻璃钢雕塑定制上海小区玻璃钢雕塑公司贵州小区玻璃钢雕塑玻璃钢卡通牛雕塑批发长沙仙桃玻璃钢人物雕塑重庆玻璃钢雕塑联系方式江门玻璃钢雕塑批发定制银川商场美陈镇江商场开业美陈树脂玻璃钢雕塑电镀工艺品口碑好的玻璃钢人物雕塑嘉兴欧式玻璃钢雕塑价位资阳玻璃钢卡通雕塑舟山户外玻璃钢雕塑供应商玻璃钢蔬菜雕塑定做四川玻璃钢花盆报价泉州玻璃钢雕塑大型玉兔徐州商场新春美陈玻璃钢寺庙雕塑安装玻璃钢桃子雕塑供应大型玻璃钢雕塑什么品牌好宁波玻璃钢雕塑价格表玻璃钢雕塑在园林中的设计佛像玻璃钢雕塑怎么制作河北特色玻璃钢雕塑优势香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化