String 与 包装类的静态创建对象的值被存在哪里

包装类的静态创建对象的值被存在哪里

public static void main(String[] args) {
    Integer ii = 12;
    Integer ii1 = 12;
    Integer bb1 = 128;
    Integer bb2 = 128;
    
    Integer ii2 = 12;
    Integer ii3 = new Integer(12);
    Integer ii4 = 2 + ii3;
    Integer ii5 = 14;
    
    System.out.println(ii == ii1);
    System.out.println(bb1 == bb2);
    System.out.println(ii2 == ii3);
    System.out.println(ii4 == ii5);
}
System.out.println(ii == ii1)输出true
System.out.println(bb1 == bb2)输出false
     解释原因看:
http://note.youdao.com/noteshare?
id=a8be3dbfffd785e52443bb892b8
a78f7&sub=A3556D4FD91D4A59B9E4C188FBF9B201  中的:
 当包装类被赋予的值超过了byte类型表示的范围时

 System.out.println(ii2 == ii3);输出false
 System.out.println(ii4 == ii5);输出true
      解释原因看:
http://note.youdao.com/noteshare?
id=a8be3dbfffd785e52443bb892b8
a78f7&sub=A3556D4FD91D4A59B9E4C188FBF9B201  中的:
 动态创建的只能是new出来的,不是被new出来的

String静态创建对象的值被存在哪里

public static void main(String[] args) {
    String ii = "1234";
    String ii1 = "1234";
    String ii2 = "12" + "34";
    String cc = "12";
    String mm = "34";
    String ii3 = cc + mm;
    String bb = new String("12");
    String xx = bb + "34";

    System.out.println(ii == ii1);
    System.out.println(ii == ii2);
    System.out.println(ii == ii3);
    System.out.println(ii == xx);
}
    System.out.println(ii == ii1);输出true
    System.out.println(ii == ii2);输出true
    System.out.println(ii == ii3);输出false
    System.out.println(ii == xx);输出false
       解释原因查看:
       http://note.youdao.com/noteshare?
       id=9446a9685e9c288b87d6d51f7d81c
       7bd&sub=127CA62103CC4604BD68B7F494CCFD12 中的:
       String 字符串拼接与运行时常量池 以及堆的关系
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值