integer常量池在哪_java 常量池
JAVA 常量 Integer
2023-06-13 09:13:37 时间
大家好,又见面了,我是你们的朋友全栈君。
目录
Integer a= 127 与 Integer b = 127相等吗
常量池
java中存在字符串常量池,维护了所有String对象
使用String s=”zx”的时候是使用String.valueOf(“zx”)从常量池中找了个对象返回 如果不存在则将内容放入常量池中
在使用new的时候是直接创建一个新的对象在堆中
Integer中也有常量池 其中缓存了-128到127之间的数字(一个字节八位大小)
Integer a= 127 与 Integer b = 127相等吗
对于对象引用类型: == 比较的是对象的内存地址。
对于基本数据类型: == 比较的是值。
如果整型字面量的值在-128 到 127 之间,那么自动装箱时不会 new 新的Integer 对象,而是直接引用Integer常量池中的 Integer 对象,超过范围 a1==b1 的结果是 false
public static void main(String[] args) {
Integer a = new Integer(3);
Integer b = 3; // 将3自动装箱成Integer类型
int c = 3;
System.out.println(a == b);
// false 两个引用没有引用同一对象(比较的是引用)
System.out.println(a == c);
// true a自动拆箱成int类型再和c比较(比较的是值)
System.out.println(b == c);
// true
//如果整型字面量的值在-128到127之间,
//那么自动装箱时不会new 新的Integer 对象,
//而是直接引用常量池中的Integer对象,
//超过范围 a1==b1的结果是false
Integer a1 = 128;
Integer b1 = 128;
System.out.println(a1 == b1);
// false
Integer a2 = 127;
Integer b2 = 127;
System.out.println(a2 == b2);
// true
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
相关文章
- Java项目毕业设计:基于springboot+vue的电影视频网站系统「建议收藏」
- Java基本语法
- java 取余 小数_Java小数取余问题求助「建议收藏」
- Java之数组转集合&集合转数组[通俗易懂]
- java的常量
- java笔试题_一道简单的 Java 笔试题,但值得很多人反思
- java的运行环境是什么_Java运行环境是什么
- MySQL字段类型如何转为java_Java JDBC中,MySQL字段类型到JAVA类型的转换
- java uuid 随机数_Java随机数和UUID[通俗易懂]
- 用java实现笛卡尔积_Java实现笛卡尔积
- java 自定义类加载器_JAVA中如何使用应用自定义类加载器「建议收藏」
- integer转string java_Integer转换为String类型[通俗易懂]
- 【Java面试八股文宝典之基础篇】备战2023 查缺补漏 你越早准备 越早成功!!!——Day08
- 【Java 网络编程】Socket TCP UDP 联系
- Java上传带图片的Http请求详解编程语言
- Java学习笔记之三java中的变量和常量详解编程语言
- java中Integer,String判断相等与integer的比较大小详解编程语言
- Java中用import导入类和用Class方法加载类有什么区别详解编程语言
- Linux下查看Java进程的方法(linux查看java进程)
- 清理Redis与Java实现过期清理策略(redisjava过期)
- 服务器快速搭建Linux Java服务器,实现互联网应用(linux搭建java)
- 处理实现基于Redis的Java过期处理(redisjava过期)
- Java实现Redis队列锁功能(redis队列锁java)
- java打印当前方法名示例分享