【JavaSE】Java基本数据类型缓存池

new Integer(18)Integer.valueOf(18)Integer.valueOf(300) 的区别

  • new Integer(18) :每次都会创建一个新对象
  • Integer.valueOf(x)
    • x in [-128, 127]:使用缓存池中的对象
    • x not in [-128, 127]:创建新对象

Integer缓存池大小:默认为 -127~128,可以通过JVM参数设置

Integer i = 18

  • 当引用是Integer类型,= 右侧是基本数据类型int时,会发生自动装箱
  • 底层其实是调用了Integer.valueOf()方法,因此也会用到缓存常量池


什么是Integer缓存?

前面所示的Integer缓存池其实就是Integer的一个静态内部类IntegerCache

相关推荐
吃饱了得干活2 分钟前
实时弹幕应该怎么搞?一篇带你从入门到生产级实战
java·后端
geats人山人海11 分钟前
c# 第八章 多态与案例
开发语言·c#
tianyuanwo19 分钟前
深入掌握 java -jar 命令:从基础到 Jenkins Agent 实战
java·jenkins·jar
ch_atu20 分钟前
使用python下载modelscope上的模型
开发语言·python
Full Stack Developme29 分钟前
MyBatis-Plus(MP)AST 抽象语法树 设计原理
java·tomcat·mybatis
Albart57535 分钟前
Python爬虫请求头伪装后仍被反爬,基于代理池+随机延迟的绕过实战
开发语言·爬虫·python
Promise微笑38 分钟前
回路电阻测试仪采购:多维度技术评估与深度避坑指南
开发语言·matlab·语音识别
宠友信息39 分钟前
消息撤回与已读状态如何在即时通讯源码中统一管理
java·spring boot·websocket·mysql·uni-app
小小放舟、1 小时前
Windows 本地安装 Elasticsearch 8.10.0 与 IK 分词器(2026)
java·大数据·windows·spring boot·elasticsearch·搜索引擎·全文检索
zzz_23681 小时前
【Java实习面试算法冲刺】总复盘
java·算法·面试