"==" 与 equals()的 区别

        String n = "woshiwoshi";
        String n1 = "woshiwoshi";
        
        System.out.println("n.equals(n1)  is  "+n.equals(n1));
        System.out.println("n==n1  is  "+(n==n1));

        System.out.println();



        String n2 = new String("hash");
        String n3 = new String("hash");
        System.out.println("n2.equals(n3)  is  "+n2.equals(n3));

        System.out.println("n2==n3  is  "+(n2==n3));



输出结果:

                    n.equals(n1)  is  true
                    n==n1  is  true

                   n2.equals(n3)  is  true

                   n2==n3  is  false


结论:

                     1.    == 与equals()一样, 都可以用来比较基本数据类型的数值,eg: int  double  short   byte   char  Long  float Boolean   引用数据类型 Sting(直接赋值的情况下 eg: String s="woshishi") 。            

                     2.   都可以用来比较对象,它们比较的是地址值,若对象里面的值相等但是地址值不同则为  false 。 

                     3.    在String对象中   equals()很特殊,它重写了String的equals()方法,比较的是数值,但是==仍然是比较的String对象的地址值。   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值