我正在使用扫描仪为我的应用程序输入输入。我的代码如下:
Scanner sc = new Scanner(System.in);
System.out.println("Do you want to give user input :YES/NO")
if(sc.next().equals("YES")){
System.out.println("which input? student or teacher name")
if(sc.next().equals("student")){
system.out.println("do something");
}
if(sc.next().equals("teacher")){
system.out.println("do something");
}
}
}else
{
system.out.println("program will run itseld");
}
代码工作正常,但它要求输入两次。假设如果我进入学生,它将不会继续,但当我第二次进入学生时,我的程序开始工作。我还在stackoverflow上看到了一些类似的问题并尝试了他们的解决方案,但我无法解决这个问题。请帮忙。
答案 0 :(得分:3)
sc.next()
每次抓取一个输入。将其存储到变量中,并在比较时使用该变量。
String input = sc.next();
if(input.equals("YES")) {
// logic here
}
答案 1 :(得分:0)
尝试这样的事情
import java.io.*;
import java.util.*;
class SumsInLoopTester {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Do you want to give user input :YES/NO");
String input = sc.next();
if (input.equals("YES")) {
System.out.println("which input? student or teacher name");
String input2 = sc.next();
if (input2.equals("student")) {
System.out.println("do something");
} else if (input2.equals("teacher")) {
System.out.println("do something");
}
} else {
System.out.println("program will run itseld");
}
}
}