"=="和equals()函数

相同点:都是返回两种单词 true或 false
不同点:“==”是用于比较两个变量本身的值,内存中的地址
“equals()”函数只是暴力的比较字符串是否一致
ps:
equals()函数的用法
String a1,a2;
比较a1,a2
(a1.equals(a2)) 输入这个内容即可 输出 true或者 false

     举个栗子

public class equals1 {
int a=1;
}
class equlas2{

public static void main(String[] args){
    equals1 one=new equals1();
    equals1 two=new equals1();
    String a1,a2,a3="abc",a4="abc";
    a1=new String("abc");
    a2=new String("abc");
    System.out.println("a1.equals(a2)是"+ (a1.equals(a2)));
    System.out.println("a1==a2是       "+ (a1==a2));
    System.out.println("a1.equals(a3)是"+ (a1.equals(a3)));
    System.out.println("a1==a2是       "+ (a1==a2));
    System.out.println("a3.equals(a4)是"+ (a3.equals(a4)));
    System.out.println("a3==a4是       "+ (a3==a4));
    System.out.println("one.equals(two)是"+ (one.equals(two)));
    System.out.println("one==two是       "+ (one==two));
    one=two;                           //赋值
    System.out.println("赋值后one.equals(two)是"+ (one.equals(two)));
    System.out.println("赋值后one==two是       "+ (one==two));

}

}

运行结果:
a1.equals(a2)是truea1==a2是片描述

明显的可以得出:
1.赋值之后无论哪个比较的方法 都会是true
但是没有赋值之前 两个值的内容是随机分配的
无法预料
相等的概率极小
所以无论哪个比较的方法 都会是false
2.一般来说只要值相同 ==结果为:false
函数结果为:true
3特殊情况下 函数的比较结果会是true
例如 a3 a4 因为这两个字符串是由字符串常量生成的变量,其所存放的内存地址是相同的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值