几种字符串判等

前言

最近学习Java相关知识,遇到了字符串判等的问题。特此整理几种我所学过的几种语言的字符串判等,后续学习语言熟练的增多,再持续更新。

正文

1.Java [==和equals方法]
  在Java中字符串是一个类,用String定义一个字符串后

String a="常";String b="常";
  //这样定义Java默认是字符串常量
  if(a==b){System.out.println("True");}
  else{Sysetem.out.println("False");}

a,b是同一个地址,这个其实比较的是地址,因此输出的确实是True.但是我们换一种构造字符串方式再用==去判等就不正确了。

String a=new String("常");
  String b=new String("常");
  //此时用new来为字符串分配空间,首地址便会不同。
  if(a==b){System.out.println("Ture")}
  else{System.out.println("False")}

此时的输出结果便不再是Ture,而是False.
因为此时,a,b 的首地址不同,而==比较的是两个字符串的首地址,输出结果自然是False。

那么我们应该用什么来进行字符串判等呢?
  我们可用String类下的equals方法。

String a=new String("常");
  String b=new String("常");
  if(a.equals(b)){System.out.println("True");}
  else{Sysetem.out.println("False");}
  //a和b若相等,equals返回的结果便是true(布尔型),否则是false(布尔型)

此时输出的结果便是false

2.C语言
3.C++
结语
  后续持续更新,敬请期待。

猜你喜欢

转载自blog.csdn.net/weixin_45794390/article/details/106720623