class KK
{
public static void main(String args[])
{
String s1="1234";
String s2,s3;
s2="5678";
s3="5678";
System.out.println(s2==s3);
}
}//第一个程序
class KK
{
public static void main(String args[])
{
String s1="1234";
String s2,s3;
s2=s1+"5678";
s3=s1+"5678";
System.out.println(s2==s3);
}
}//第二个程序
请问各位前辈:为什么第一个程序结果会是真而第二个就为假了呢?
还有一个问题:“地址和引用是一回事吗?”请前辈们指教谢谢大家
{
public static void main(String args[])
{
String s1="1234";
String s2,s3;
s2="5678";
s3="5678";
System.out.println(s2==s3);
}
}//第一个程序
class KK
{
public static void main(String args[])
{
String s1="1234";
String s2,s3;
s2=s1+"5678";
s3=s1+"5678";
System.out.println(s2==s3);
}
}//第二个程序
请问各位前辈:为什么第一个程序结果会是真而第二个就为假了呢?
还有一个问题:“地址和引用是一回事吗?”请前辈们指教谢谢大家
解决方案 »
- 请大家帮忙看一个关于异常的问题
- 帮我做一个简单的画图程序,但是必须做到能在上面写字
- 再问:一个网页上可以挂接多个applet吗?HTML中怎么写?
- 关于SourceDataLine的问题
- 请问petstore1.3.1是否能在j2se1.41+j2ee1.4的环境下发布?解决给500分!!!
- 怎么在java application下用ie打开一个网页?100分
- 求助文件操作中修改文件中字段的问题,请大家帮忙解决
- 开发平台有讲究吗!
- 誰能給個對數據庫操作的bean例子﹗分不斷送上﹗
- 哪位大虾知道怎样做一个报表编辑器,或提供一些相关的资料,高分相赠!
- 集合中Collection接口问题
- 对象克隆 出现的问题 请高手帮忙解决下
第二个程序,由于有+,所以在运行期会在堆创建2个新的对象,地址不同,内容相同
==比较的是地址,所以是false楼主如果不是很理解string,可以先简单的人为,只要有+,并且+的两边不全是常量,就等于是new关键词好比,s2=new String("5678");
s3=new String("5678");
s2==s3返回的是false
通常比较字符串是否相同用equals方法