赞
踩
Java String compareTo()方法用于按字典顺序比较两个字符串。此方法在Comparable接口中声明。由于String实现了Comparable接口,因此它提供了compareTo()方法实现。
Java字符串比较
Java String类compareTo()方法有两种变体。
1. compareTo(String anotherString)方法:
此方法将String对象与按字典顺序传递的anotherString参数进行比较。
如果String对象在传递的参数之前,则返回负整数,如果String对象在参数String之后,则返回正整数。
当两个String都具有相同的值时返回0,在这种情况下,equals(String str)方法将返回true。
比较是基于字符串中每个字符的Unicode值。应该查看String类源代码以了解此方法的工作方式。
2. compareToIgnoreCase(String str)方法
这个方法与第一个类似,只是它忽略了大小写。它使用String CASE_INSENSITIVE_ORDER比较器进行不区分大小写的比较。
如果此方法的返回值为0,则equalsIgnoreCase(String str)将返回true。当指定的String大于,等于或小于此String时,此方法返回负整数,零或正整数,比较忽略大小写。
下面来看一个java类,演示如何使用java string compareTo()方法的用法。
public class StringCompareToExample {
/**
* This class show String compareTo examples
* @param args
*/
public static void main(String[] args) {
String str = "ABC";
System.out.println(str.compareTo("DEF"));
System.out.println(str.compareToIgnoreCase("abc"));
}
}
执行上面示例代码,得到以下结果 -
-3
0
输出为负值,这是因为“ABC”在字典上比“DEF”小。因为它逐个比较字符值。也可以使用以下测试程序进行确认。
public class Test {
public static void main(String[] args) {
char a = 'A';
char d = 'D';
System.out.println(a-d); //prints -3
}
}
因此,当“ABC”与“DEF”进行比较时,将比较第一个索引处的字符。由于它们是不相同,并且’A’在字典之前出现在’D’之前,它返回一个负整数,它们之间有差值,因此输出为-3。
因此,如果将“AABC”与“ADBC”进行比较,那么将获得相同的输出:-3。这就是Java String compareTo()方法示例的全部内容。请注意,此方法与String equals()方法不同。
¥ 我要打赏
纠错/补充
收藏
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。