【基础笔记】compareTo()方法详情 Java

一、Integer比较用compareTo()时

1,对比数字时相同,返回0。

2,对比数字不同,若调用compareTo()的num1比num2大时,返回1;若调用compareTo()的num2比num1大时,返回-1。

Integer num1 = 5;
Integer num2 = 10;
System.out.println(num1.compareTo(num2));//返回-1
System.out.println(num2.compareTo(num1));//返回1
Integer num3 = 9;
Integer num4 = 9;
System.out.println(num3.compareTo(num4));//返回0

二、String比较用compareTo()时

参与比较的两个字符串如果首字符相同,则比较下一个字符,直到有不同的为止,返回该不同的字符的asc码差值;

如果两个字符串不一样长,可以参与比较的字符又完全一样,则返回两个字符串的长度差值。

String s1 = "abcdefg";
String s2 = "abc";
System.out.println(s1.compareTo(s2));//4
System.out.println(s2.compareTo(s1));//-4
String s3="cAb";//A的ASCII值为65
String s4="cbd";//b的ASCII值为98
System.out.println(s3.compareTo(s4));//-33
System.out.println(s4.compareTo(s3));//33

PS:

Java的8种包装类型(Byte,Boolean,Short,Character,Integer,Long,Float,Double),都有compareTo()方法,都可以调用。

发布了23 篇原创文章 · 获赞 1 · 访问量 4278

猜你喜欢

转载自blog.csdn.net/michiko98/article/details/104221612