私はこれらすべてにかなり慣れていませんが、Texas Computer Science UIL イベントの練習をしていて、練習問題に取り組んでいますが、このエラーに遭遇しました。
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at bridge.bridge.main(bridge.java:28)
これが私のコードです。正直なところ、見た目がひどいだけでなく、何が問題なのかわかりません。
import java.util.*;
import java.io.*;
public class bridge {
public static void main(String[] args) throws IOException {
Scanner input = new Scanner(new File("bridge.dat"));
int convoys = input.nextInt();
int vehicles;
int weight = 0;
int speed = 0;
int speedholder;
int checker = 0;
boolean placeholder = true;
for(int i = 0; i < convoys; i++){
vehicles = input.nextInt();
for(int y = 0; y < vehicles; y++) {
if(!placeholder) {
placeholder = true;
weight += checker;
speedholder = input.nextInt();
if(speedholder < speed || speed == 0) {
speed = speedholder;
}
}
else {
checker = input.nextInt();
if(weight + checker > 42) {
placeholder = false;
}
else {
weight += checker;
speedholder = input.nextInt();
if(speedholder < speed || speed == 0) {
speed = speedholder;
}
}
}
}
System.out.println(speed);
speed = 0;
weight = 0;
}
input.close();
}
}
エラーが発生する前に「5」が出力されます。そして、私の入力ファイルは次のようになります。
2
8
10 10
5 25
40 5
35 15
12 23
30 20
42 25
8 30
10
42 10
23 30
40 5
2 10
1 20
4 30
6 28
28 3
17 8
35 10
どんな助けでも大歓迎です。私は同様の質問を探し回りましたが、これは少し複雑なエラーのように見えました.