String s="java"; String s=new String("java");,stringjavanew
分享于 点击 47960 次 点评:214
String s="java"; String s=new String("java");,stringjavanew
关于java中的字符串对象比较
String s1="java"; String s2=new String("java"); String s3="java"; s1==s3为true -----------------------------------------------------
两者死不一样的: 1、String s="java"; 这里产生得到一个字符串常量。系统首先会去“常量池”寻找,看是否有“java”常量存在,如果有那么就将这个常量“java”赋给s,如果没有则系统在常量池里创建“java”,并将其给s。 2、String s = new String("java"); 意思是根据常量“java”创建一个字符串的对象,如此他首先会执行1中的操作,然后根据常量“java”在堆中创建对象,并为其分配内存。 当然在使用没有什么区别,但本质是有区别地 -------------------------------------------------------------------
String a1="java"; String a2="java"; a1==a2;//结果为true,其实a1和a2是同一个数据 String b1=new String("java"); String b2=new String("java"); b1==b2//结果为false,b1和b2是两个对象
相关文章
- 暂无相关文章
用户点评