有谁知道为什么我的扫描仪每三行要求输入一次,而不是每一行?如果你运行它,你会看到它首先提出这个问题,但是不会再出现两行,然后再次提出这个问题。我怎样才能让它在每一行都提问,更别说将它存储在链表中。为什么我的扫描仪每三行询问一次输入?
import java.util.Scanner;
public class StackCalc {
public static StackLL stackll = new StackLL();
public static void create() {
String hold = new String();
Scanner scanner = new Scanner(System.in);
boolean running = true;
while (true) {
System.out.print("Enter number, math operation(+,-,*, or /), or Q to quit: ");
hold = scanner.next();
if (scanner.next().equals("Q") || scanner.next().equals("q")) {
System.out.println(hold);
break;
}
}
}
public static boolean checkInt(String s, int it){
Scanner scan = new Scanner(s.trim());
if(!scan.hasNextInt(it))
return false;
scan.nextInt(it);
return !scan.hasNext();
}
public static void main(String args[]) {
create();
}
}
任何输入都会很棒。
可能重复http://stackoverflow.com/questions/13102045/skipping-nextline-after-use -nextint) – 2015-01-27 00:40:15
@AlexisKing我在程序中看不到任何nextLine() – kirbyquerby 2015-01-27 00:41:25
当我使用.nextLine()时,通常会发生同样的事情; – Matt 2015-01-27 00:41:51