[英]Java exception with scanner
我的掃描儀有問題。 當我編譯它時,沒有問題。 但是當我想運行這個程序時,我得到了一個例外。 你們中的任何人都可以向我解釋這個問題的原因嗎?
import java.util.Scanner;
public class CiagArytmetyczny {
public static void main(String[] args) {
Scanner s = new Scanner("System.in");
System.out.println("Podaj dlugosc ciagu: ");
int dl = s.nextInt();
int element = 2;
for(int i=1; i<=dl; i++) {
element=element+3;
System.out.println(element);
}
}
}
Podaj dlugosc ciagu:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at CiagArytmetyczny.main(CiagArytmetyczny.java:8)
過程完成。
你在這一行有問題
Scanner s = new Scanner("System.in");
您正在將字符串傳遞給 Scanner 構造函數。 根據 java 文檔( Scanner(String source) ),將返回一個新的 Scanner ,它生成從指定字符串掃描的值。 根據程序的其余部分,應該提供一個帶有數字的字符串,以便掃描儀在下一行中提取。
int dl = s.nextInt();
如果您打算從控制台獲取輸入,請按如下方式更改掃描儀初始化。 Scanner 的構造函數很少,我建議您查看java docs 。
Scanner s = new Scanner(System.in);
這會將控制台輸入流提供給掃描器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.