equals java string_Java中关于String和equals

小白一个,做做笔记帮助自己理解。

今天学习Java的时候,刚好学到关于判断字符串是否相等的问题,于是引发了一个区别“==”和“equals”的一个问题,还是从程序入手吧。

package equals;

public class equal {

public static void main(String[] args) {

// TODO Auto-generated method stub

String A=new String("美好一天");

String B=new String("美好一天");

System.out.println(A.equals(B));

System.out.println(A==B);

String C="美好一天";

String D="美好一天";

System.out.println(C.equals(D));

System.out.println(C==D);

}

}

以上程序的输出结果分别是

true

false

true

true

为什么会出现上面的结果呢,这要从“==”和“equals”的比较的作用来探讨。equals()方法是用来判断两个字符串的内容是否相等。容易和“==”混淆,“==”也可以用来比较两个字符串,但是用“==”比较的不只是字符串的内容是否相等,它还会检查这两个字符串的地址是否相同,即两个字符串是否处在同一个位置上。只有字符串内容相同而且它们的地址也相同的情况下,才返回true,否则返回false。关于String A=new String("美好一天");和String C="美好一天";这二者的区别,大家可以自行上网查阅。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值