Java 字符串比较

在 Java 中,比较字符串的常用方法有 3 个:equals() 方法、equalsIgnoreCase() 方法、 compareTo() 方法

1. equals()

equals() 方法将逐个地比较两个字符串的每个字符是否相同。

"abc".equals("abc")

2. equalsIgnoreCase() 方法

equalsIgnoreCase() 方法的作用和语法与 equals() 方法完全相同, 但是忽略大小写

"Abc".equalsIgnoreCase("abc")

返回true

3. compareTo() 方法

compareTo() 方法用于按字典顺序比较两个字符串的大小,该比较是基于字符串各个字符的 Unicode 值。

String str1 = "a";

String str2 = "A";


System.out.println(str1.compareTo(str2));

输出 32

4. 误区 ==

不少人会比较string的时候用到== 其实==表示对比底层地址。

String str1 = "abc";

String str2 = new String("abc");


System.out.println(str1==str2);

System.out.println(str1.equals(str2));


System.out.println(str1=="abc");

System.out.println(str1.equals("abc"));

false

true

true

true

str1==str2 返回了false,因为两个字符串所在的存储地址不同。str2 是 str1 的拷贝,不过值相同所以equals

https://java-er.com/blog/java-compare-string/

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 包装类 包装类是把八大基本数据类型封装到一个类中,并提供属性和方法。 是为了更方便的操作基本数据类型,而不是取代基...
    什么时候养猫阅读 360评论 0 0
  • 50道经典Java编程练习题,将数学思维运用到编程中来。抱歉哈找不到文章的原贴了,有冒犯的麻烦知会声哈~ 1.指数...
    OSET我要编程阅读 7,190评论 0 9
  • java.lang.String类代表字符串 程序中所有的双引号字符串,都是String类的对象。 (1) 字符...
    yang嗯嗯阅读 478评论 0 0
  • 前言:这几篇关于RxSwift源码分析的文章主要是对源码进行解析,不涉及到RxSwift的具体使用。具体使用可以查...
    盾子阅读 718评论 1 5
  • 在这偌大的空间里 炉火的温度已然 散布到各个角落 每一根木柴都烧着,烧着 直到化为灰烬 可如今 人去楼空 整个屋内...
    syd121阅读 231评论 1 1