Ich versuche, Werte in ein Array von Typ Urlaub setzen, aber ich bekomme Fehler , wenn ich die Werte Wenn der Index i wird 1 (in der for-Schleife) .Klasse Java - Array der Klasse, Empfangen von Daten vom Benutzer
Ist dies der richtige Weg, um die Werte in den Konstruktor zu erhalten?
Der Fehler, den ich bekommen:
Exception in thread "main" java.util.InputMismatchException
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 ExamQ1.main.main(main.java:13)
Der Haupt:
import java.util.Scanner;
public class main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Holiday[] h = new Holiday[4];
for (int i = 0; i < h.length; i++) {
System.out.println(i);
h[i] = new Holiday(in.nextLine(), in.nextLine(), in.nextInt());
}
}
}
Die Klasse:
public class Holiday {
private String name;
private String hebrewMonth;
private int vacationDays;
public Holiday(String name, String hebrewMonth, int vacationDays) {
this.name = name;
this.hebrewMonth = hebrewMonth;
this.setVacationDays(vacationDays);
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
public void sethebrewMonth(String hebrewMonth) {
this.hebrewMonth = hebrewMonth;
}
public String getHebrewMonth() {
return this.hebrewMonth;
}
public void setVacationDays(int vacationDays) {
this.vacationDays = vacationDays;
}
public int getVacationDays() {
return this.vacationDays;
}
public String toString() {
String str = "name: " + this.name + ",hebrew Month: "
+ this.hebrewMonth + ",vaction days: " + this.vacationDays;
return str;
}
}
danken der
Was geben Sie als Eingabe? –
aaa >>>> bbb >>>> 1 >>>> ccc >>>> vvv ---- >>>> hier der Fehler Start – liran
Dies ist keine gute Möglichkeit zum Einfügen von Elementen, Ihre Scanner könnte nicht einmal Ergebnisse zurückgeben, also sollten Sie Dinge umschließen, bevor Sie irgendetwas mit ihnen machen wie folgt: while (in.hasNext()) {} – neocorp