一切都是输出的方式,但我得到编译器错误。我在ZyBooks上做这个。你能告诉我我做错了什么吗?
import java.util.Scanner;
public class Inputkey {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
String inputString = "";
int inputInt = 0;
inputString = scnr.next();
inputInt = scnr.nextInt();
while ( !inputString.equals("Stop")){
if ( inputInt <= 35) {
System.out.println( inputString + ": reorder soon");
}
inputString = scnr.next();
inputInt = scnr.nextInt();
}
}
}
我得到的错误:线程“main”异常
java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:937)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
at Inputkey.main(Inputkey.java:18)
1条答案
按热度按时间uajslkp61#
使用
inputString = scnr.nextLine();
代替inputString = scnr.next();
Java Scanner的next()和nextLine()方法是nextLine()返回一行文本中的每个字符,直到回车,而next()将行拆分为单个单词,一次返回一个单独的文本字符串。
样品输入:
scanner.next()返回
This
,而scanner.nextLine()返回This is stackoverflow