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

在将用户输入放入数组而不出错时遇到困难

贝嘉泽
2023-03-14
package roomBillSplit;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        
        System.out.println("Welcome to Roommate Bill Splitter!\n");
        
        //Get Residence Name from User
        System.out.print("Please Enter Name of Place or Address:  ");
        String place = input.nextLine();

        roommates(place);           
        bills(place);
        input.close();
    }
       
    public static void roommates(String place) {
        int numRoom, i;
     
        Scanner input = new Scanner(System.in);
        
        //Get # of Roommates at Residence
        System.out.print("How Many Total People Reside at " + place + ":  ");
        numRoom = input.nextInt();
        
        String[] roommates = new String[numRoom];
        //ArrayList<String> roommates = new ArrayList<String>(5);

        //Get Names of Roommates
        for(i = 0; i < roommates.length; i++) {
            System.out.print("What is Person Number " + (i + 1) + "'s Name:  ");
            if(input.hasNext()) {
                roommates[i] = input.nextLine();
                input.next();
            }
        }
        
        for(i = 0; i < roommates.length; i++) {
                System.out.println(roommates[i]);
            }
            input.close();
        }
    }

    public static void bills(String place) {
        int numBills, i;
     
        Scanner input = new Scanner(System.in);
     
        //Get # of Bills Split Between Roommates
        System.out.print("What is the Total Number of Bills to be Split at " + place + ":  ");
        numBills = input.nextInt();
        
        String[] bills = new String[numBills];
        
        //Get Names of Bills
        for(i = 0; i < bills.length; i++) {
            System.out.print("Please List Bill Number " + (i + 1) + ":  ");
            if(input.hasNext()) {
                bills[i] = input.nextLine();
                input.next();
            }
        }
        
        for(i = 0; i < bills.length; i++) {
            System.out.println(bills[i]);
        }
        
        int amount[] = new int[numBills];
        
        //Get Amount of Each Bill
        for(i = 0; i < bills.length; i++) {
            System.out.print("What is the Total Amount of the " + bills[i] + " Bill:  $");
            if(input.hasNextInt()) {
                amount[i] = input.nextInt(); 
                input.next();
            }
        }
                
        input.close();
        
        for(i = 0; i < amount.length; i++) {
            System.out.print(bills[i]);
            System.out.print("\t$");
            System.out.println(amount[i]);
        }  
    }
}

总共有多少人住在1212 Main:2

1号人的名字是什么

2号的人叫什么名字:b

位于Roombillsplit.main.main(main.java:19)

1212 Main要拆分的账单总数是多少:

共有1个答案

莫选
2023-03-14

您的程序正在等待用户输入。如果你按下任何一个键,它就会恢复。这是因为

您有额外的input.next()在删除这行中,它将工作。

//Get Names of Roommates
    for(i = 0; i < roommates.length; i++){
        System.out.print("What is Person Number " + (i + 1) + "'s Name:  ");
            if(input.hasNext()){
               roommates[i] = input.nextLine();
               input.next();
            }
    }

更新:

 类似资料:
  • 以下代码的输出是:请输入您的单词: 你好, 凯沙夫, 鲍勃, doan kehsavbob 线程中的异常 “主要” java.lang.数字格式异常: 对于输入字符串: “kehsavbob” 在 java.base/java.lang.数字格式异常.为输入字符串 (数字格式例外.java:67) 在 java.base/java.lang.Integer.parseInt(整数.java:668

  • 我正在尝试使用autocompletetextview创建没有操作栏的搜索工具。到目前为止,布局和建议是有效的,但当我键入搜索时,我键入的任何字符都会给出相同的结果,但它不会根据我键入的文本给出建议。我再次检查,我的输入是“d”,所以我把它改为: 这一次,我犯了一个错误。这是我的日志 E/AndroidRuntime: FATAL EXCEPTION: main Process:com.examp

  • 我做了一个程序,要求我输入一个名字,这个名字应该在一个名为的数组中。看起来是这样的: 我在这里做错了什么?

  • 问题内容: 快速问题(我希望!):如果我使用\ i将输入文件输入到psql中,是否可以从查询中获取输出以保存到文件中?如果是这样,怎么办?谢谢!! 问题答案: 根据文档,用于将输出定向到文件。

  • 我正在尝试编写这个程序,这样当用户输入一行文本时,他们就会得到一个图表,显示每个字母被使用了多少次。我把它分解成一个数组,但我总是得到一个错误:“counts[letters[a]=='a']++;”也就是说我不能将字符串转换为char,也不能将boolean转换为int,这取决于我把它放进去的方式。我不明白为什么不全是带电。

  • 我刚刚开始使用PyCharm,并从Eclipse导入了一个项目。 在虚拟环境上运行时,我能够注册一个编译的文件(PresPy)。但是,我仍然有一个“未解决的引用”错误。我还根据PyCharm工具提示建议安装了。 当运行项目时,我奇怪地没有pyd相关的错误。相反,解释器会抱怨不同的模块,而不是“包级别”。 导入语句中未解决的引用:rgb_color: 堆栈跟踪: 内容根是项目文件夹。源文件夹位于单独