我正在开发一个程序,该程序继续要求用户输入航班代码,即FR201。然后,程序将读取航班代码,并返回航空公司和航班号。但是我很难让它正常工作,只是得到了“无效的输入”。这是我已经尝试过的,任何帮助都将不胜感激!
import java.util.Scanner;
public class flightcode{
public static void main(String[]args)
{
String s2;
do{
Scanner s1 = new Scanner(System.in);
System.out.println("Enter a number");
s2 = s1.nextLine();
int num = s2.length()-2;
int s3=0;
if(s2.substring(0,1)=="EI")
{
s3 = 1;
}
else if(s2.substring(0,1)=="FR")
{
s3 = 2;
}
else if(s2.substring(0,1)=="AF")
{
s3 = 3;
}
else if(s2.substring(0,1)=="AA")
{
s3 = 4;
}
else if(s2.substring(0,1)=="IB")
{
s3 = 5;
}
switch (s3)
{
case 1: System.out.println("Airline: Aer Lingus - Flight number:" + s2.substring(2)); break;
case 2: System.out.println("Airline: Ryanair - Flight number:" + s2.substring(2)); break;
case 3: System.out.println("Airline: Air France - Flight number:" + s2.substring(2)); break;
case 4: System.out.println("Airline: American Airlines - Flight number:" + s2.substring(2)); break;
case 5: System.out.println("Airline: Iberia - Flight number:" + s2.substring(2)); break;
default: System.out.println("Invalid input"); break;
}
}
while(s2!= "END");
}
}发布于 2016-11-05 20:48:50
问题不在交换机。请阅读:https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#substring(int,%20int)
我建议您对不应该发生的事情使用断言。例如,代码遍历if链的其他部分。
https://stackoverflow.com/questions/40438399
复制相似问题