我有以下代码在switch语句的情况1下从用户那里获取输入:
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
SimpleDateFormat myFormat = new SimpleDateFormat("dd MM yyyy");
Guest gstObject = new Guest();
System.out.println("Enter reservation ID:");
gstObject.setId(input.nextInt());
System.out.println("Enter first name:");
gstObject.setfName(input.next());
System.out.println("Enter last name:");
gstObject.setfName(input.next());
System.out.println("Enter check-in date (dd/mm/yy):");
String cindate = input.nextLine();
if(null != cindate && cindate.trim().length() > 0){
Date date1 = myFormat.parse(cindate);
}
System.out.println("Enter check-out date (dd/mm/yy):");
String outdate = input.nextLine();
if(null != outdate && outdate.trim().length() > 0){
Date date2 = myFormat.parse(outdate);
}
}
代码同时逐个输入Enter last name:
,但同时运行最后两个check-in date
和check-out date
步骤,并且不要求输入check-in date
。
我尝试通过切换这些输入的位置。我也忽略了采取位于顶部的输入并采取位于底部的输入。同时尝试将check-in date
和check-out date
置于最顶端。他们忽略了输入并直接跳转到Enter reservation ID
。
我如何解决这个问题?