int和Integer的区别

article/2025/8/22 14:25:12

Java是面向对象的语言,一切操作都以对象为基础,像集合里面也只支持存储Object类型数据,普通类型无法通过集合存储,

在Java中,intInteger是两种不同的类型,它们有以下主要区别:

一、类型分类

  • int:是Java的基本数据类型(primitive type),它是一个32位的有符号整数,直接存储数值。

  • Integer:是int的包装类(wrapper class),它是一个对象,继承自Object,用于将基本数据类型int封装为一个对象。里面提高了有很多方法和属性,使用时更加灵活。

二、存储方式

  • int:直接存储在栈空间里

  • Integer:存储在堆内存里,因为他是个对象

三、内存占用

  • int:占用4字节(32位)的内存空间。

  • Integer:占用的内存空间比int大,因为它是一个对象,除了存储数值外,还包含对象的元数据(如类信息、锁信息等)。

四、默认值

  • int:默认值是0

  • Integer:默认值是null(如果声明为局部变量且未初始化,会报编译错误)。

五、操作性能

  • int:操作性能高,因为它直接操作数值,没有对象的开销。

  • Integer:操作性能相对较低,因为它涉及到对象的创建和引用操作。

六、自动装箱和拆箱(Autoboxing and Unboxing)

从Java 5开始,引入了自动装箱(autoboxing)和自动拆箱(unboxing)机制,使得intInteger之间的转换更加方便。例如:

Integer a = 10; // 自动装箱,将int值10自动转换为Integer对象
int b = a; // 自动拆箱,将Integer对象a自动转换为int值
  • 自动装箱:将int值自动转换为Integer对象。

  • 自动拆箱:将Integer对象自动转换为int值。

七、使用场景

  • int:适用于需要高性能、内存占用小的场景,特别是在处理大量数据或性能敏感的代码中。

  • Integer:适用于需要将整数作为对象处理的场景,例如:

    • 存储在集合中(如List<Integer>)。

    • 使用泛型时(如ArrayList<Integer>)。

    • 使用反射或动态类型检查时。

八、空值处理

  • int:不能表示空值,因为它是一个基本数据类型,必须有一个具体的数值。

  • Integer:可以表示空值,因为它是对象,可以为null。例如:

    Integer a = null; // 合法
    int b = null; // 编译错误

九、总结

  • int:适用于需要高性能和内存效率的场景。

  • Integer:适用于需要将整数作为对象处理的场景,如集合操作、泛型、空值处理等。

在实际开发中,根据具体需求选择合适的类型。如果不需要将整数作为对象处理,建议使用int以提高性能和内存效率。如果需要将整数作为对象处理,或者需要使用集合、泛型等特性,则使用Integer

装箱拆箱

这里本身Java的集合是没法存储非Object类的,但这里int自动装箱成了Integer对象,就可以了。


http://www.hkcw.cn/article/VrQANdhoVg.shtml

相关文章

Oracle/openGauss中,DATE/TIMESTAMP与数字日期/字符日期比较

ORACLE 运行环境 openGauss 运行环境 0、前置知识 ORACLE&#xff1a;DUMP()函数用于返回指定表达式的数据类型、字节长度及内部存储表示的详细信息 SELECT DUMP(123) FROM DUAL; -- Typ2 Len3: 194,2,24 SELECT DUMP(123) FROM DUAL;-- Typ96 Len3: 49,50,51 -- ASCII值&am…

应用于公路路面破损状况检测的视觉系统

随着公路交通的日益发展&#xff0c;公路交通也是经济命脉&#xff0c;路面病害检测直接关系到交通安全&#xff0c;公路路面检测是养护管理的核心环节&#xff0c;及时识别裂缝、坑槽、车辙等病害&#xff0c;避免因路面损坏引发交通事故。 公路路面基病害检测系统是基于数字图…

ZeroSearch: 无需搜索即可激发LLM的搜索能力

论文地址&#xff1a;https://arxiv.org/abs/2505.04588v2 摘要 有效的的信息搜索对于增强大型语言模型 (LLM) 的推理和生成能力至关重要。 最近的研究探索了使用强化学习 (RL) 通过与现实世界环境中的实时搜索引擎交互来提高 LLM 的搜索能力。 虽然这些方法显示出可喜的结果&…

Linux实操篇-进程管理

目录 传送门前言一、进程管理概念二、进程管理实战1. **查看进程**ps 命令top 命令htop 命令 2. **进程的启动和终止**启动进程停止进程使用 pkill 或 killall 3. **进程优先级管理**nice 和 renice 命令top 中调整进程优先级 4. **进程的查看与控制**pgrep 命令pstree 命令str…

DAY 14 SHAP库的绘制

上面这个图就是一个比较直观的解释。机器学习模型一般都是一个黑盒。比如某个模型要进行一些预测任务&#xff0c;首先对模型输入一些已知条件&#xff08;Age65,SexF,BP180,BMI40&#xff09;&#xff0c;然后模型根据输入进行训练&#xff0c;最终训练完的模型可以对该条件输…

如何避免客户频繁更换对接人

避免客户频繁更换对接人的关键措施包括建立稳定的客户关系、提高客户对接人的专业素养、建立高效的沟通机制、增强客户满意度等。其中&#xff0c;建立稳定的客户关系是避免客户频繁更换对接人的核心&#xff0c;只有当客户信任你的对接人并认可其专业性&#xff0c;才会持续稳…

5.29打卡

浙大疏锦行 DAY 38 Dataset和Dataloader类 知识点回顾&#xff1a; 1. Dataset类的__getitem__和__len__方法&#xff08;本质是python的特殊方法&#xff09; 2. Dataloader类 3. minist手写数据集的了解 作业&#xff1a;了解下cifar数据集&#xff0c;尝试获取其中一张图…

【芯片设计中的交通网络革命:Crossbar与NoC架构的博弈C架构的博弈】

在芯片设计领域&#xff0c;总线架构如同城市交通网&#xff0c;决定了数据流的通行效率。随着AI芯片、车载芯片等复杂场景的爆发式增长&#xff0c;传统总线架构正面临前所未有的挑战。本文将深入解析两大主流互连架构——Crossbar与NoC的优劣&#xff0c;揭示芯片"交通网…

官方将调查小车坠桥事故车道设计 四车道突收窄引关注

官方将调查小车坠桥事故车道设计 四车道突收窄引关注!近日,广东东莞环莞快速路虎门段发生了一起严重的交通事故。5月19日,一名网友称其侄儿驾车经过该路段时,由于四车道突然收窄为三车道,车辆失控从高架冲出路面,造成车上5人伤亡。5月29日,广东虎门镇“519”事故工作专班…

中国航天史上最长任务开启 谁来接力“天问”?

5月29日,天问二号任务发射圆满成功,我国开启小行星探测与采样返回之旅。天问二号任务设计周期10年左右,如此长的任务周期,是否拉开了太空探索新的序幕?此次任务的“双目标探测”探什么?有多难?天问二号的十年之约对于我们的航天人才储备意味着什么?中国航天史上最长太空…

雪龙2号将面向公众开放:极地科考成果展示

5月28日,“雪龙2”号极地科考破冰船抵达海南海口,标志着中国第41次南极考察队顺利完成全部考察任务。“雪龙2”号计划近期举办公众开放日活动,这是该船首次抵琼并面向公众开放。“雪龙2”号于2024年11月1日从广州出发,历时208天,总航程超过4万海里。此次考察的最大亮点在于…

Kubernetes 中部署 kube-state-metrics 及 Prometheus 监控配置实战

文章目录 Kubernetes 中部署 kube-state-metrics 及 Prometheus 监控配置实战环境准备创建监控命名空间准备配置文件创建 ServiceAccount配置 RBAC 权限部署 kube-state-metrics部署node_exporter(可选)验证服务账号 TokenPrometheus 配置示例小结验证增加Grafana面板增加prome…

【大模型02】Deepseek使用和prompt工程

文章目录 DeepSeekDeepseek 的创新MLA &#xff08;低秩近似&#xff09; MOE 混合专家混合精度框架总结DeepSeek-V3 与 DeepSeek R1 DeepSeek 私有化部署算例市场&#xff1a; autoDLVllM 使用Ollma复习 API 调用deepseek-r1Prompt 提示词工程Prompt 实战设置API Keycot 示例p…

价格暴跌近50%!“榴莲自由”要来了?进口水果降价潮

对于水果爱好者来说,今年是个特别“甜蜜”的年份。从年初开始,车厘子、蓝莓等曾经价格较高的水果纷纷降价。最近,“水果之王”榴莲也大量上市了,价格持续下降,“榴莲自由”似乎近在眼前。初夏时节,菠萝蜜、山竹、荔枝、桃子等各种水果相继上市。在浙江,记者观察到榴莲的…

我国科学家揭示青藏高原“幽灵祖先”遗传起源之谜

记者从中国科学院古脊椎动物与古人类研究所获悉,该研究所付巧妹研究团队和云南省文物考古研究所,联合四川大学、兰州大学、西北大学等机构,历经9年成功捕获和测序了来自17个遗址的127例距今7100年以来的云南古代人类基因组。该研究不仅填补了东亚和东南亚史前人群遗传数据的…

中央巡视组进驻后 “亚洲最大医院”原院长被查 医疗巨无霸掌门人落马

5月29日上午,河南省纪委监委通报了河南省政协人口资源环境委员会主任阚全程涉嫌严重违纪违法的消息。目前,他正接受纪律审查和监察调查。阚全程这个名字对很多人来说并不陌生。他曾担任河南省卫生健康委主任长达五年,并长期执掌郑州大学第一附属医院。在他的领导下,该医院启…

UniApp X:鸿蒙原生开发的机会与DCloud的崛起之路·优雅草卓伊凡

UniApp X&#xff1a;鸿蒙原生开发的机会与DCloud的崛起之路优雅草卓伊凡 有句话至少先说&#xff0c;混开框架中目前uniapp x是率先支持了鸿蒙next的开发的&#xff0c;这点来说 先进了很多&#xff0c;也懂得审时度势。 一、UniApp X如何支持鸿蒙原生应用&#xff1f; UniAp…

FreeRTOS---任务创建与删除

FreeRTOS—任务创建与删除 1 基本概念 在多任务系统里面&#xff0c;任务有以下三大要素&#xff1a; 做何事&#xff1a;函数栈和TCB优先级 对于每个任务我们得确定它做何事&#xff0c;这个可以通过函数去实现。每个任务需要设置不同的栈&#xff0c;同时还需要设置TCB结构…

梅花鹿遭野狗追逐坠落死亡 流浪狗围猎问题频发

梅花鹿遭野狗追逐坠落死亡 流浪狗围猎问题频发!近日,有网友称近一周来,辽宁大连有数只梅花鹿遭流浪狗撕咬死亡,还有梅花鹿在被狗群追逐时从高处坠落死亡。5月27日凌晨,一只母鹿遭狗群追逐从土墙上坠落摔伤,全身多处撕咬伤,后经抢救无效死亡。据大连野境自然保护中心介绍…

这场峰会捅了美国痛点 东盟联手应对关税挑战

这场峰会捅了美国痛点 东盟联手应对关税挑战!东盟、中国与海合会再开启“新篇章”。5月27日下午,首届东盟-中国-海合会峰会在马来西亚吉隆坡召开。从东亚合作扩展到跨区域合作,三方在峰会上首次正式会面,标志着区域合作进入全新阶段,具有重要的里程碑意义。东盟和中国作…