课程
/后端开发
/Java
/Java入门第三季
s1和s3是不同对象所以返回false,那s1和s2也是不同对象阿,为什么就返回true呢
2014-10-16
源自:Java入门第三季 2-2
正在回答
创建字符串对象有2种方法:
1、String str1 = "慕课网"; String str2 = "慕课网"; 2、String str3 = new String("慕课网"); String str4 = new String("慕课网");
在第一种情况下:因为"慕课网"为常量字符串,多次出现时被编译器优化,只创建了一个对象。所以s1和s2内存地址相同。
而在第二种情况下,因为是new()产生的,所以每次都会产生一个新的对象,所以s1和s3是不同对象。
课程里的解析语句有解释,S1和s2是多次出现的字符常量,JAVA编译时只创建一个!
在这里,s1和s2是同一个对象吧
因为这里s1和s2是当常量来处理的,就相当于引用一个对象。s3则不同,是new了一个新对象所以会有这样的结果
抗货产品汪
举报
Java中你必须懂得常用技能,不容错过的精彩,快来加入吧
1 回答为什么我添加课程之后遍历没有课程,我想在运行面板多次添加课程
2 回答关于泛型定义
1 回答今日案例 :模拟借书系统 (异常处理练习)
2 回答大神们 这个的作用是什么啊
1 回答尝试在选课的时候添加try-catch的时候
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号