条件判断,主要是第一个字母的匹配加contains双重限制
import java.util.Scanner;
public class Main{
public static void main(String[] args) { Scanner sc = new Scanner(System.in);
String[] c = new String[6];
c[0] = "reset";
c[1] = "reset board";
c[2] = "board add";
c[3] = "board delete";
c[4] = "reboot backplane";
c[5] = "backplane abort";
String[] a = new String[7];
a[0] = "reset what";
a[1] = "board fault";
a[2] = "where to add";
a[3] = "no board at all";
a[4] = "impossible";
a[5]= "install first";
a[6] = "unknown command";
while(sc.hasNext()){
String str = sc.nextLine();
if(!str.contains(" ")){
if(c[0].contains(str) && c[0].charAt(0) == str.charAt(0)){
System.out.println(a[0]);
}
else{
System.out.println(a[6]);
}
}
else{
String[] arr = str.split(" ");
if(arr.length!=2){
System.out.println(a[6]);
}
else{
int count = 0;
int num = 0;
for(int i=1;i<6;i++){
String[] sarr = c[i].split(" ");
if(sarr[0].contains(arr[0]) && sarr[0].charAt(0) == arr[0].charAt(0) && sarr[1].contains(arr[1]) && sarr[1].charAt(0) == arr[1].charAt(0)){
count++;
num = i;
}
}
if(count == 1){
System.out.println(a[num]);
}
else{
System.out.println(a[6]);
}
}
}
}
}
}