-4
この単純なコードを実行しようとしていますが、この例外が発生し、解決できない場合は、他の投稿でいくつか解決策を試しましたが、結果はありません。Scanner in Javaの例外に直面
import java.text.DecimalFormat;
import java.util.*;
class test{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
for(int i=0;i<4;i++){
int a = sc.nextInt();
String s = sc.next();
int b = sc.nextInt();
if(s.equals("*")){
System.out.println(a*b);
}
else if(s.equals("+")){
System.out.println(a+b);
}
else if(s.equals("-")){
System.out.println(a-b);
}
else if(s.equals("/")){
double a1 = a;
double b1 = b;
System.out.println(new DecimalFormat("##.##").format(a1/b1));
}
}
}
}
例外を助ける:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:907)
at java.util.Scanner.next(Scanner.java:1416)
at test.main(test.java:14)
スキャナは、区切り文字で区切られたトークンを反復処理しています。 Scannerのデフォルトの区切り文字は1つ以上の空白です。したがって、1 + 2は1つのトークンを表し、1 + 2は3つのトークンを表します(前後にスペースがあるため)。 – Pshemo
@azurefrog私はこれらの操作を試してみます:1 + 2秒1 1 3 3 1 1/5 4分2 1各行に1つずつ – azert123
@Pshemoこれを実行しましたが、結果はありません – azert123