Кто-нибудь знает, почему мой сканер запрашивает ввод каждые три строки, а не каждую строку? Если вы запустите его, вы увидите, что он сначала задает вопрос, но затем не для двух строк, а затем снова задает вопрос. Как заставить его задавать вопрос в каждой строке, не говоря уже о том, чтобы хранить его в связанном списке.Почему мой сканер запрашивает ввод каждые три строки?
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();
}
}
Любой вход был бы потрясающим.
возможно дубликат [Пропуск nextLine() после использования nextInt()] (http://stackoverflow.com/questions/13102045/skipping-nextline-after-use -nextint) –
@AlexisKing Я не вижу в программе nextLine() – kirbyquerby
То же самое происходит, когда я использую .nextLine(); – Matt