int和Integer的区别

来源:互联网 发布:cimatrone11编程教程 编辑:程序博客网 时间:2024/06/01 20:10
  • 代码如下
public class Main {    public static void main(String[] args) {        //基本类型比较,只比较数值是否相等        int n1 = 47;        int n2 = 47;        System.out.println(n1 == n2);        System.out.println("=================");        //虽然数据类型是包装型的,但是jvm中存在常量池,        // 这种定义变量的方式会保存到常量池,所以尽管        // 比较的是两个对象的内存地址,但是还是相等的        Integer n3 = 47;        Integer n4 = 47;        System.out.println(n3 == n4);        System.out.println("=================");        //使用new的方式,对象会保存到堆内存,所以肯定        // 是两个不同的对象,所以内存肯定不同        Integer n5 = new Integer(47);        Integer n6 = new Integer(47);        System.out.println(n5 == n6);    }}
  • 输出结果
true=================true=================false
原创粉丝点击