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
广告