当前位置: 首页 > 知识库问答 >
问题:

程序(java)跳过nextLine()提示符,继续程序[重复]

国仰岳
2023-03-14

代码如下:

import java.util.Scanner;

public class DriverProject1
{
public static void main(String[] args)
{

    int roomNumber;
    int numberOfRooms;
    int optionNumber;
    String guestName = null;
    String phoneNumber;
    int nightsStaying;
    double nightlyRate;

    Scanner keyboard = new Scanner(System.in);
    System.out.println("How many rooms are in the hotel?");
    numberOfRooms = keyboard.nextInt();
    Hotel Carnegie = new Hotel(numberOfRooms);
    do
    {
        System.out.println("Welcome to the MENU!");
        System.out.println("Please enter a number corresponding to the option desired."); // main menu screen
        System.out.println("OPTION 1: Put guest into room");
        System.out.println("OPTION 2: Remove guest from room");
        System.out.println("OPTION 3: Get guest info");
        System.out.println("OPTION 4: Get guest count");
        System.out.println("OPTION 5: Display guest book");
        System.out.println("OPTION 6: Calculate expected income");
        System.out.println("OPTION 7: Quit");

        optionNumber = keyboard.nextInt(); // choosing an option
        if (optionNumber == 1) // if option 1 is chosen
        {

            System.out.println("What is the guests first name?");
            guestName = keyboard.nextLine();
            System.out.println("What is the guests Phone number?");
            phoneNumber = keyboard.nextLine();
            Guest newGuest = new Guest(guestName);
            newGuest.setPhoneNumber(phoneNumber);

“客人叫什么名字?客人的电话号码是多少?"guestName已初始化为"。第36行-39行。不确定这个问题正在发生。我正在使用一些包含在我的酒店类中的方法,但是我几乎可以肯定它们不包含导致这个错误的错误。同样,do循环在代码的后面完成。

共有2个答案

濮阳宏硕
2023-03-14

更改代码如下所示,然后它将工作

import java.util.Scanner;

public class DriverProject1
{
public static void main(String[] args)
{

    int roomNumber;
    int numberOfRooms;
    int optionNumber;
    String guestName = null;
    String phoneNumber;
    int nightsStaying;
    double nightlyRate;

    Scanner keyboard = new Scanner(System.in);
    System.out.println("How many rooms are in the hotel?");
    numberOfRooms = Integer.parseInt(keyboard.nextLine());
    Hotel Carnegie = new Hotel(numberOfRooms);
    do
    {
        System.out.println("Welcome to the MENU!");
        System.out.println("Please enter a number corresponding to the option desired."); // main menu screen
        System.out.println("OPTION 1: Put guest into room");
        System.out.println("OPTION 2: Remove guest from room");
        System.out.println("OPTION 3: Get guest info");
        System.out.println("OPTION 4: Get guest count");
        System.out.println("OPTION 5: Display guest book");
        System.out.println("OPTION 6: Calculate expected income");
        System.out.println("OPTION 7: Quit");

        optionNumber = Integer.parseInt(keyboard.nextLine());; // choosing an option
        if (optionNumber == 1) // if option 1 is chosen
        {

            System.out.println("What is the guests first name?");
            guestName = keyboard.nextLine();
            System.out.println("What is the guests Phone number?");
            phoneNumber = keyboard.nextLine();
            Guest newGuest = new Guest(guestName);
            newGuest.setPhoneNumber(phoneNumber);
长孙弘壮
2023-03-14
keyboard.nextLine();
guestName = keyboard.nextLine();

通过添加keyboard.nextLine()跳过一行;在阅读客人姓名之前。这对我有用。

 类似资料:
  • 这是我使用的代码: 但当它到达这一点时,它只会说“创建一个名称”。和“创建密码”。两个都在同一时间,然后我必须打一些东西。所以它基本上跳过了需要键入字符串的扫描器部分。在“创建名称”之后。和“创建密码”。然后输入,名称和密码都改为我输入的内容。我怎么解决这个? 这是全班学生。我只是在测试,所以它实际上不是一个程序: 抱歉我语法不好。我不是英国人,所以我很难解释。

  • 我制作了一个程序,要求用户输入5位数字,然后程序将查找这些数字的总和。我想知道我怎样才能使程序在计算一次之后一遍又一遍地要求一个数字。我希望用户再试一次,直到他自己想退出。

  • 我最近开始学习Java编程语言的基础知识。为了在命令提示符下运行我的程序,我下载了java开发工具包(也称为JDK),并将我的Windows10系统路径设置为: C:\Program Files\java\jdk-9.0.1\bin;C:\Program Files\java\jre-9.0.1\bin 在用以下格式编写了一个简单的Hello World程序后: 并在命令提示符下使用 ,然后写 j

  • 好吧,我是Android Studio的新手,我在玩一个愚蠢的屁噪音应用程序。我的第一次尝试是一个按钮发出噪音。现在我有三个按钮,但应用程序无法在模拟器中打开。它只说应用程序一直在关闭。我试着用谷歌搜索log cat中的每一个错误,但到目前为止没有任何效果。我尝试了两个不同的模拟器,但最初它工作得很好,所以不确定要改变什么。声音文件是。我不确定这是否重要。 这是我的原木猫 04-10 11:41:

  • null 到目前为止,我在cmd中的输入是: d: CD JavaProgram javac snake.java board.java 从这里我该怎么办? 这是指向这2个java文件源代码的链接。http://zetcode.com/tutorials/javagameStutorial/snake/

  • 小程序跳转小程序 产品简介 开发者可以通过以下接口帮助用户在小程序之间互相跳转。 使用场景 当开发者拥有多个小程序时,可以通过小程序间互相跳转,完善小程序生态。 开放标准 对所有入驻小程序的企业开放。 打开指定的小程序 开发者可以使用jd.navigateToMiniProgram(OBJECT),打开指定的小程序,帮助用户在小程序之间跳转。 OBJECT 参数说明: 参数名 类型 必填 说明 a