您现在的位置: 365建站网 > 365文章 > java中compareTo和comparetoIgnorecase的用法和区别

java中compareTo和comparetoIgnorecase的用法和区别

文章来源:365jz.com     点击数:438    更新时间:2018-01-06 11:26   参与评论

该方法按字典顺序比较两个字符串,不考虑大小写。此方法返回一个整数。根据指定String大于、等于、小于此String对象,返回结果分别为负整数、0、正整数。

语法  compareToIgnoreCase(String str)  str:str指定比较的String。

示例  使用compareToIgnoreCase()函数按字典顺序比较字符串strCom和strCom1,并将结果赋值给int变量strLower。虽然比较的字符串一个是小写,一个是大写,但是字符串strLower的返回值为0。 String strCom = "I LIKE JAVA"; String strCom1 = "i like java"; int strLower = strCom.compareToIgnoreCase(strCom1);

在使用compareTo方法与compareToIgnoreCase方法进行比较时,空格也是字符串中的字符。

典型应用  compareTo方法与compareToIgnoreCase方法都可以用于比较字符串。但两者有一定的区别,例如,使用两个只有大小写不同的字符串与同一个字符串进行比较,两种方法会得到不同的结果,如图1.1所示。

本示例的关键代码如下: public static void main(String[] args) {   String word = "I LIKE JAVA";     //定义字符串   int com = word.compareTo("i like java");   //调用compareTo方法   int another = word.compareToIgnoreCase("i like java");   //调用compareToIgnoreCase方法   System.out.println("使用compareTo方法比较结果:"+com);   System.out.println("使用compareToIgnoreCase方法比较结果:"+another); }

 
compareTo:比较 compareToIgnoreCase:比较,忽略大小写 如果参数字符串等于此字符串,则返回 0 值;如果按字典顺序此字符串小于字符串参数,则返回一个小于 0 的值;如果按字典顺序此字符串大于字符串参数,则返回一个大于 0 的值。 例:字典的顺序:0123456ABCabc 大写字母在小写字母前 String query = new String(); String number = new String(); int i = 0; query = "a"; number = "1"; i = query.compareTo("A"); (a在A之后,返回大于0的值) i = number.compareTo("2"); (1在2之前,返回小于0的值) 实例
public class Test {

    public static void main(String args[]) {
        String str1 = "STRINGS";
        String str2 = "Strings";
        String str3 = "Strings123";

        int result = str1.compareToIgnoreCase( str2 );
        System.out.println(result);
     
        result = str2.compareToIgnoreCase( str3 );
        System.out.println(result);
    
        result = str3.compareToIgnoreCase( str1 );
        System.out.println(result);
    }
}
以上程序执行结果为:
0
-3
3

实例
public class Test{
   public static void main(String args[]){
      Integer x = 5;
      System.out.println(x.compareTo(3));
      System.out.println(x.compareTo(5));
      System.out.println(x.compareTo(8));           
     }
}
编译以上程序,输出结果为:
1
0
-1

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛

发表评论 (438人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
昵称:
最新评论
------分隔线----------------------------

快速入口

· 365软件
· 杰创官网
· 建站工具
· 网站大全

其它栏目

· 建站教程
· 365学习

业务咨询

· 技术支持
· 服务时间:9:00-18:00
365建站网二维码

Powered by 365建站网 RSS地图 HTML地图

copyright © 2013-2024 版权所有 鄂ICP备17013400号