用户输入未返回第一个输入的方法

时间:2018-04-20 20:23:14

标签: java while-loop

我遇到这种特殊方法的问题。该方法用于询问用户他们具有哪些课程先决条件。当我稍后在程序中调用该方法以返回用户输入的值时,程序将完全跳过第一个输入。

例如,如果用户输入“CS 120,CS 125,CIS 130”,则程序仅显示“CS 125,CS 130”。

感谢您的帮助!

E

1 个答案:

答案 0 :(得分:0)

没有理解你的用例和输入,所以我认为应该朝着正确的方向做点什么

public static String getPreReqs(){
    int i = 1;
    Scanner console =  new Scanner(System.in);
    StringBuilder result = new StringBuilder();
    result.append("Pre-requisites are: ");
    while (true){
        System.out.print("List pre-requisite #"+ i +"(enter done, if finished entering pre-requisites)? ");
        String preReqs = console.nextLine();

        if (preReqs.toLowerCase().equals("done"))
            break;

        result.append(preReqs).append(" ");
        i += 1;
    }
    return result.toString();
}

我使用StringBuilder因为它在连接字符串时提供了更好的性能

让我知道我离您的用例有多远,我会尝试调整我的解决方案