Tach Leute, ich wollte einen Terminkalender programmieren und bekomme nun immer wieder Exception Meldungen, ab der Zeile Termin wo ich einen String eingeben muss.Die Aufgabe dient zur Übung von Arrays und Schleifen.
Java:
importjava.util.Scanner;publicclassGrundlagen{publicstaticvoidmain(String[] args){Scanner in=newScanner(System.in);String termine[]=newString[24];for(int i=0; i<24; i++)
termine[i]="";//Hauptprogramm in einer Schleifeboolean fertig=false;while(!fertig){System.out.println("1 = Neuer Eintrag");System.out.println("2 = Termin ausgeben");System.out.println("3 = Programm beenden");System.out.println("Ihre Wahl");int auswahl=in.nextInt();switch(auswahl){case1:System.out.println("Wie viel Uhr");int uhr=in.nextInt();if(uhr<0| uhr>23){System.out.println("Eingabefehler");break;}System.out.println("Termin:");String eingabe=in.nextLine();
termine[uhr]=eingabe;break;//Termine ausgebencase2:for(int i=0; i<24; i++)System.out.println(i+"Uhr"+ termine[i]);break;case3://Programm beenden
fertig =true;break;default://fase zahl eingegeben
System.out.println("Falsche Zahl eingegeben");}}}}
Java:
1=NeuerEintrag2=Termin ausgeben
3=Programm beenden
IhreWahl1Wie viel Uhr12Termin:1=NeuerEintrag2=Termin ausgeben
3=Programm beenden
IhreWahlSchlafenException in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(UnknownSource)
at java.util.Scanner.next(UnknownSource)
at java.util.Scanner.nextInt(UnknownSource)
at java.util.Scanner.nextInt(UnknownSource)
at Grundkurs.Grundlagen.main(Grundlagen.java:23)
Thrown by a Scanner to indicate that the token retrieved does not match the pattern for the expected type, or that the token is out of range for the expected type.
Ich weiß was die Exception bedeutet, ich verstehe meinen Fehler nicht so wirklich, da ich für die String eingabe doch nextLine() benutzt habe, sollte es dich gehen oder?
Edith: Wie schon im anderen Thread...
Probier mal diesen Input:
1 = Neuer Eintrag
2 = Termin ausgeben
3 = Programm beenden
Ihre Wahl
1
Wie viel Uhr
5 schlafen
System.out.println("Ihre Wahl");
int auswahl=in.nextInt();
Nach "Ihre Wahl" muss nach deinem Code auf jeden Fall ein Integer folgen für dein switch-case Block. Da du aber "Schlafen" eintippst, gibts die Exception.