将字符串与Java中的(可能)空值进行比较?
Java中的字符串表示字符数组。它们由String类表示。
使用compareTo()方法
的compareTo()String类两个字符串(由炭炭)的方法,也接受空值。如果获得的整数的值为-,则此方法返回表示结果的整数-
0:给定两个字符串相等或为null。
1以下:当前String放在参数之前。
1或多个:当前String接替参数。
示例
import java.util.Scanner;
public class CompringStrings {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter your first string value: ");
String str1 = sc.next();
System.out.println("Enter your second string value: ");
String str2 = sc.next();
//比较两个字符串
int res = str1.compareTo(str2);
System.out.println(res);
if(res==0) {
System.out.println("Both Strings are null or equal");
}else if(res<0){
System.out.println(""+str1+" preceeds "+str2+"");
}else if(res>0){
System.out.println(""+str2+" preceeds "+str1+"");
}
}
}输出结果
Enter your first string value: null Enter your second string value: null 0 Both Strings are null or equal
输出结果
Enter your first string value: mango Enter your second string value: apple -1 apple preceeds mango
equals()Object类的使用方法
以相同的方式,equals()对象类的方法接受两个String值并返回一个布尔值,如果两个值相等(或为null),则为true;否则为false。
示例
import java.util.Scanner;
public class CompringStrings {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter your first string value: ");
String str1 = sc.next();
System.out.println("Enter your second string value: ");
String str2 = sc.next();
if(str1.equals(str2)) {
System.out.println("Both Strings are null or equal");
}else {
System.out.println("Both Strings are not equal");
}
}
}输出1
Enter your first string value: null Enter your second string value: null 0 Both Strings are null or equal