Integer x= 127 与 Integer y = 127相等吗?(2013基础面题库)

书欣 Java面经 发布时间:2022-10-24 23:29:02 阅读数:11038 1 Java基础面试(2023年优化版)
今天面试时-遇到上面一个问题
其实面试官问出这个问题:
    主要是向考察的知识点为: Integer在常量池中存储值的范围

注意事项:
    当一个Integer的字面在 -128~127之间时,
	则不会装箱为新的Integer对象
	而直接引用常量池中的Integer对象
例:
 
public static void main(String[] args) {
    Integer a = new Integer(8);
    Integer b = 8;  // 将8自动装箱成Integer类型
    int c = 8;
    System.out.println(a == b); // false 两个引用没有引用同一对象
    System.out.println(a == c); // true a自动拆箱成int类型再和c比较
    System.out.println(b == c); // true

    Integer a1 = 128;
    Integer b1 = 128;
    System.out.println(a1 == b1); // false

    Integer a2 = 127;
    Integer b2 = 127;
    System.out.println(a2 == b2); // true
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202210/16666253964709.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者