1. 程式人生 > >java使用compareTo()方法和compareTocompareToIgnoreCase()方法比較字串大小

java使用compareTo()方法和compareTocompareToIgnoreCase()方法比較字串大小

使用compareTo()方法

compareTo()方法介紹:按字母順序逐個比較字元大小,將字元轉換成ASCII碼後進行比較,區分字母大小寫。
例如:int n1 = str1.compareTo(str2);//比較的是str1和str2的大小,返回兩者之間的差值,

情況1:str1=“hahb”,str2=“hahc”,則n1= -1(b 和 c 的ASCII碼之差);
情況2:str1=“haab”,str2=“hacg”,則n1= -2(a 和 c 的ASCII碼之差);
情況3:str1=“hafb”, str2=“haaj”, 則n1= 5(f 和 a 的ASCII碼之差);
情況4:str1=“haf

b”, str2=“hafb”, 則n1= 0(f 和 f 的ASCII碼之差為0);

程式碼:

import java.util.Scanner;
public class Test {

     public static void main(String[] args){
    	 
    	 Scanner sc = new Scanner(System.in);
    	 System.out.print("請輸入第一個字串:");
    	 String str1 = sc.nextLine();
    	 System.out.print("請輸入第一個字串:");
    	 String str2 = sc.nextLine();
    	 sc.close();
    	 
    	 int n1 = str1.compareTo(str2);//比較字串str1和str2的大小
  	 
    		 
         if ( n1 > 0 )
    		 System.out.println("字串"+str1+"大於字串"+str2);
    	 else if ( n1 < 0 )
    		 System.out.println("字串"+str1+"小於字串"+str2);
    	 else
    		 System.out.println("字串"+str1+"等於字串"+str2);
    	         	 
    	
     }
       
}

執行結果:

請輸入第一個字串:hahk
請輸入第一個字串:hagl
字串hahk大於字串hagl

===========================================================

使用compareTocompareToIgnoreCase()方法

compareTocompareToIgnoreCase()方法介紹:按字典比較兩個字串,不區分大小寫。
例如
情況1:str1=“haha”,str2=“HAha”,則n1= 0;
情況2:str1=“haBx”,str2=“hacd”,則n1= -1;
情況3:str1=“sgGc”, str2=“sgd

c”, 則n1= 3;

程式碼:

import java.util.Scanner;
public class Test {

     public static void main(String[] args){
    	 
    	 Scanner sc = new Scanner(System.in);
    	 System.out.print("請輸入第一個字串:");
    	 String str1 = sc.nextLine();
    	 System.out.print("請輸入第一個字串:");
    	 String str2 = sc.nextLine();
    	 sc.close();
    	 
    	 int n1 = str1.compareToIgnoreCase(str2);//比較字串str1和str2的大小
    		 
         if ( n1 > 0 )
    		 System.out.println("字串"+str1+"大於字串"+str2);
    	 else if ( n1 < 0 )
    		 System.out.println("字串"+str1+"小於字串"+str2);
    	 else
    		 System.out.println("字串"+str1+"等於字串"+str2);
    	         	 
    	
     }
       
}

執行結果:

請輸入第一個字串:agGa
請輸入第一個字串:agbx
字串agGa大於字串agbx