Java小白入门200例40之Java字符串比较

Posted 编程界明世隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例40之Java字符串比较相关的知识,希望对你有一定的参考价值。

作者简介

作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!

引言

很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  39.Java字符串拼接(连接)
►下一篇  41. if else分支结构详解

方法1

equals() 方法
equals() 方法将逐个地比较两个字符串的每个字符是否相同。如果两个字符串具有相同的字符和长度,它返回 true,否则返回 false。对于字符的大小写,也在检查的范围之内。equals() 方法的语法格式如下:
str1.equals(str2);
str1 和 str2 可以是字符串变量, 也可以是字符串字面量。

package demo.demo40;

public class Equal {

	public static void main(String[] args) {
		String str1 = "abc";
		String str2 = new String("abc");
		String str3 = "ABC";
		System.out.println(str1.equals(str2)); // 输出 true
		System.out.println(str1.equals(str3)); // 输出 false
	}
}

运行结果:

true
false

方法2

equalsIgnoreCase() 方法的作用和语法与 equals() 方法完全相同,唯一不同的是 equalsIgnoreCase() 比较时不区分大小写。当比较两个字符串时,它会认为 A-Z 和 a-z 是一样的。

package demo.demo40;

public class Equal2 {

	public static void main(String[] args) {
		String str1 = "abc";
		String str2 = "Abc";
		String str3 = "ABC";
		System.out.println(str1.equalsIgnoreCase(str2)); // 输出 true
		System.out.println(str1.equalsIgnoreCase(str3)); // 输出 true
	}
}

运行结果:

true
true

方法3

compareTo() 方法
compareTo() 方法用于按字典顺序比较两个字符串的大小,该比较是基于字符串各个字符的 Unicode 值。compareTo() 方法的语法格式如下:
str.compareTo(String otherstr);
它会按字典顺序将 str 表示的字符序列与 otherstr 参数表示的字符序列进行比较。如果按字典顺序 str 位于 otherster 参数之前,比较结果为一个负整数;如果 str 位于 otherstr 之后,比较结果为一个正整数;如果两个字符串相等,则结果为 0。

提示:如果两个字符串调用 equals() 方法返回 true,那么调用 compareTo() 方法会返回 0。

package demo.demo40;

public class Compare {

	public static void main(String[] args) {
		String str = "A";
	    String str1 = "a";
	    System.out.println("str=" + str);
	    System.out.println("str1=" + str1);
	    System.out.println("str.compareTo(str1)的结果是:" + str.compareTo(str1));
	    System.out.println("str1.compareTo(str)的结果是:" + str1.compareTo(str));
	    System.out.println("str1.compareTo('a')的结果是:" + str1.compareTo("a"));
	}
}

运行结果:

str=A
str1=a
str.compareTo(str1)的结果是:-32
str1.compareTo(str)的结果是:32
str1.compareTo(‘a’)的结果是:0

分析,因为A 的ASCII是65,而a的是97,用str.compareTo(str1) 实际上可以理解成65-97所以返回-32,反过来同理,如果返回是0,那就表示是一样的。

小结

这节总结了“Java字符串比较”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。

评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  39.Java字符串拼接(连接)
►下一篇  41. if else分支结构详解

热门专栏推荐

1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java

以上是关于Java小白入门200例40之Java字符串比较的主要内容,如果未能解决你的问题,请参考以下文章

Java小白入门200例61之java中Date日期类型的大小比较

Java小白入门200例37之Java截取字符串

Java小白入门200例39之Java字符串拼接(连接)

Java小白入门200例38之Java字符串的替换

Java小白入门200例21之字符串反转

Java小白入门200例35之分割字符串