搜索

关于String str=new String("123");

发布网友 发布时间:2024-10-23 13:58

我来回答

2个回答

热心网友 时间:11小时前

请看下面:
String
str="aaa";//直接使用常量
"aaa"的地址是固定的
String
str=new
String("aaa");//使用对象
又创建了一个与"aaa"相同内容的字符串,但与常量"aaa"不在同一个地方
String
s1
=
"aaa";
String
s2
=
"aaa";
String
s3
=
new
String("aaa");
System.out.println(s1
==
s2);//true
同样使用的是常量,地址相同
System.out.println(s1
==
s3);//false
使用常量与使用对象(new出来的)是不同的
System.out.println(s1.equals(s3));//true
内容相同,都是"aaa"
区分equals

==
的区别

热心网友 时间:11小时前

关于String
str=new
String("123");
悬赏分:15
-
离问题结束还有
8

18
小时
String
str=new
String("123");
str.equal();与"123".equal();那种方法更好?为什么?
问题补充:能详细说说吗?分情况是什么情况?
提问者:caowp
-
试用期
一级
回答

3

请看下面:
String
str="aaa";//直接使用常量
"aaa"的地址是固定的
String
str=new
String("aaa");//使用对象
又创建了一个与"aaa"相同内容的字符串,但与常量"aaa"不在同一个地方
String
s1
=
"aaa";
String
s2
=
"aaa";
String
s3
=
new
String("aaa");
System.out.println(s1
==
s2);//true
同样使用的是常量,地址相同
System.out.println(s1
==
s3);//false
使用常量与使用对象(new出来的)是不同的
System.out.println(s1.equals(s3));//true
内容相同,都是"aaa"
区分equals

==
的区别
回答
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top