首页 > 编程语言 > 详细

javaSE21/9/13

时间:2021-09-16 19:40:54      阅读:37      评论:0      收藏:0      [点我收藏+]

Integer缓冲区

  • java预先创建了256个常用的整数包装类型对象,-128~127
  • 在实际应用中,对已经创建的对象进行复用
public class Demo { 
    public static void main(String[] args) { 
        Integer integer1 = new Integer(100);//将基本类型转换为引用类型 
        Integer integer2 = new Integer(100); 
        System.out.println(integer1==integer2);//俩对象为引用类型,比的是栈内存里的地址,所以输出false 

        Integer integer3 = 100;//自动装箱,将基本类型转为引用类型 
        Integer integer4 = 100; 
        System.out.println(integer3==integer4);//输出true 
        /* velueof方法中存有-128~127之间的数, 
        如果需要用到方法里的数,直接将该数所对应的地址从堆空间 传到栈空间,
        所以两个对象对应的地址一样 */ 

        Integer integer5 = 200;//自动装箱 
        Integer integer6 = 200; 
        System.out.println(integer5==integer6);//输出false, 
    // 200不在范围内,所以在堆空间里新开一个空间,对应的地址不相同 
    } 
} 

String类

  • 字符串是常量,创建之后不能改变
  • 字符串字面值存储在字符串池中,可以共享
  • String s = "Hello";
  • String s = new String("Hello");产生两个对象,堆,池各存储一个
public class Demo {
    public static void main(String[] args) {
        String name = "张三";//存储在常量池中
        name = "李四";//新开辟了个空间,name的地址值改变
        String name2 = "李四";//在常量池中找到“李四”,得到他的地址值
        String str = new String("Hello");//在堆空间和常量池中都开辟空间
    }
}

技术分享图片

javaSE21/9/13

原文:https://www.cnblogs.com/wpxz1005/p/15265591.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!