Java 程式比較字串
你可以使用 compareTo() 方法,equals() 方法或 == 運算子比較 Java 中的兩個字串。
compareTo() 方法比較兩個字串。比較基於字串中每個字元的 Unicode 值。此 String 物件表示的字元序列按字面意義比較與字元序列表示的引數字串。
如果此 String 物件在按字面意義上位於引數字串之前,則結果為負整數。
如果此 String 物件在按字面意義上位於引數字串之後,則結果為正整數。
如果字串相等,則結果為零,僅當 equals(Object) 方法返回 true 時,compareTo 才返回 0。
示例
public class StringCompareEmp{ public static void main(String args[]){ String str = "Hello World"; String anotherString = "hello world"; Object objStr = str; System.out.println( str.compareTo(anotherString) ); System.out.println( str.compareToIgnoreCase(anotherString) ); System.out.println( str.compareTo(objStr.toString())); } }
輸出
-32 0 0
String 類中的 equals() 方法將此字串與指定物件進行比較。僅當引數不為 null 並且為 String 物件,並且表示與該物件相同的字元序列時,結果才為真。
示例
public class StringCompareEqual{ public static void main(String []args){ String s1 = "tutorialspoint"; String s2 = "tutorialspoint"; String s3 = new String ("Tutorials Point"); System.out.println(s1.equals(s2)); System.out.println(s2.equals(s3)); } }
輸出
true false
你還可以使用 == 運算子比較兩個字串。但是,它比較給定變數的引用,而不是值。
示例
即時演示
public class StringCompareequl{ public static void main(String []args){ String s1 = "tutorialspoint"; String s2 = "tutorialspoint"; String s3 = new String ("Tutorials Point"); System.out.println(s1 == s2); System.out.println(s2 == s3); } }
輸出
true false
廣告