为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要用equal?不用equal也可以实现啊?

public class HelloWorld {

    public static void main(String[] args) {

int score = 94;

String sex = "女";

        if(score>80){

            System.out.println("进入决赛");

            if(sex=="女"){

                System.out.println("您在女子组");

            } else{

                System.out.println("您在男子组");

            }

        }


正在回答

2 回答

感觉好难学啊

0 回复 有任何疑惑可以回复我~

==是用来判断字符串对象的引用是否指向同一个对象的,你这里的String sex = "女",是创建了一个字符串直接量对象,然后用sex引用该对象,判断条件里的"女"也是字符串直接量的对象,在Java中相同的字符串直接量对象只创建一次,也就是说sex引用指向的"女",与判断条件中创建的"女"是同一个对象,所以返回true,你如果把sex的创建改成:String sex = new String("女");,那么sex == "女"返回的就是false了,就必须用equal方法了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要用equal?不用equal也可以实现啊?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信