本文概述
我们可以根据内容和参考来比较java中的字符串。
它用于身份验证(通过equals()方法), 排序(通过compareTo()方法), 引用匹配(通过==运算符)等。
有三种方法可以比较java中的字符串:
- 通过equals()方法
- 由= =运算符
- 通过compareTo()方法
1)通过equals()方法比较字符串
字符串equals()方法比较字符串的原始内容。它比较字符串的值是否相等。字符串类提供两种方法:
- public boolean equals(Object another)将此字符串与指定对象进行比较。
- public boolean equalsIgnoreCase(String another)将此String与另一个字符串进行比较, 忽略大小写。
class Teststringcomparison1{
public static void main(String args[]){
String s1="Sachin";
String s2="Sachin";
String s3=new String("Sachin");
String s4="Saurav";
System.out.println(s1.equals(s2));//true
System.out.println(s1.equals(s3));//true
System.out.println(s1.equals(s4));//false
}
}
立即测试
Output:true
true
false
class Teststringcomparison2{
public static void main(String args[]){
String s1="Sachin";
String s2="SACHIN";
System.out.println(s1.equals(s2));//false
System.out.println(s1.equalsIgnoreCase(s2));//true
}
}
立即测试
输出:
false
true
单击此处了解有关equals()方法的更多信息
2)字符串比较==运算符
= =运算符比较引用而不是值。
class Teststringcomparison3{
public static void main(String args[]){
String s1="Sachin";
String s2="Sachin";
String s3=new String("Sachin");
System.out.println(s1==s2);//true (because both refer to same instance)
System.out.println(s1==s3);//false(because s3 refers to instance created in nonpool)
}
}
立即测试
Output:true
false
3)通过compareTo()方法进行字符串比较
String compareTo()方法按字典顺序比较值, 并返回一个整数值, 该值描述第一个字符串是否小于, 等于或大于第二个字符串。
假设s1和s2是两个字符串变量。如果:
- s1 == s2:0
- s1> s2:正值
- s1 <s2:负值
class Teststringcomparison4{
public static void main(String args[]){
String s1="Sachin";
String s2="Sachin";
String s3="Ratan";
System.out.println(s1.compareTo(s2));//0
System.out.println(s1.compareTo(s3));//1(because s1>s3)
System.out.println(s3.compareTo(s1));//-1(because s3 < s1 )
}
}
立即测试
Output:0
1
-1
单击我以获取更多关于compareTo()方法的信息
«上一页
下一个 ”
评论前必须登录!
注册