Aufgabe 5: Exceptions
-
- Administrator
- Beiträge: 383
- Registriert: Do 23. Okt 2008, 20:16
- Wohnort: Karlsruhe
- Kontaktdaten:
Aufgabe 5: Exceptions
in der aufgabe is ja ein Beispiel für eine Fehlermeldung bei der eingabe 09, die man dann ja eigentlich mit einer exception machen müsste. wir haben ja aber auch noch keine exceptions in der Vorlesung gemacht und ich weiß´daher leider auch nicht wie sowas geht und wollte daher einfach wissen, ob man dass auch ohne exception abfangen kann/muss oder ob man das einfach lässt? weil auf dem aufgabenblatt steht ja eigentlich man soll es abfangen, in den newsgroups hab ich aba gelesen, man brauch keine exceptions verweden.
Re: Aufgabe 5: Exceptions
Du musst nicht auf falsch eingegebene Zahlen prüfen, dafür würdest du Exceptions brauchen. Für die Kontrolle, ob genau zwei Zahlen eingegeben wurden, reicht es schon, wenn du überprüfst, ob dein Array (nach dem Aufspalten in Tokens) die Länge zwei hat.
mfG
Markus
mfG
Markus
Re: Aufgabe 5: Exceptions
Bei der Eingabe 09 brauchts keine Exceptions.
Du splittest den eingegebenen String ja mit eingabe.split(..) auf. Dann bekommst du ein Array zurück, in dem in jedem Feld eine Zahl steht. Wenn du jetzt 09 eingegeben hast, hast du aber nur ein Feld im Array und weißt dadurch, dass zu wenige Zahlen eingegeben wurden.
Du kannst mit arr.length überprüfen, ob genug Felder im Array sind.
Anders ist es, wenn man keine Zahl, sondern Buchstaben eingeben würde. Da bräuchte es Exceptions, um so eine Ausgabe wie in der Vorgabe zu erhalten. Aber laut Tutor Aufgabenstellung kann man voraussetzen, dass Zahlen eingegeben werden.
Du splittest den eingegebenen String ja mit eingabe.split(..) auf. Dann bekommst du ein Array zurück, in dem in jedem Feld eine Zahl steht. Wenn du jetzt 09 eingegeben hast, hast du aber nur ein Feld im Array und weißt dadurch, dass zu wenige Zahlen eingegeben wurden.
Du kannst mit arr.length überprüfen, ob genug Felder im Array sind.
Anders ist es, wenn man keine Zahl, sondern Buchstaben eingeben würde. Da bräuchte es Exceptions, um so eine Ausgabe wie in der Vorgabe zu erhalten. Aber laut Tutor Aufgabenstellung kann man voraussetzen, dass Zahlen eingegeben werden.
-
- Administrator
- Beiträge: 383
- Registriert: Do 23. Okt 2008, 20:16
- Wohnort: Karlsruhe
- Kontaktdaten:
Re: Aufgabe 5: Exceptions
super danke für die hilfe
hätte jetzt noch ne frage, und zwar könnte es sein, dass es nur möglich is die exception einma abzufangen, also wenn ichs dann 2ma eingeb kommt die wieda, wenn ichs so mit ner if schleife mach oder habt ihr das auch gelöst bekommen^^
hätte jetzt noch ne frage, und zwar könnte es sein, dass es nur möglich is die exception einma abzufangen, also wenn ichs dann 2ma eingeb kommt die wieda, wenn ichs so mit ner if schleife mach oder habt ihr das auch gelöst bekommen^^
Re: Aufgabe 5: Exceptions
Ich hab jetzt mal die Arraylängenabfrage so gebastelt:
if (tokens.length != 2) {
terminal.println("Blahblah2Zahlenblah");
} else {
blah hier kgv yay!
Problem is: Das funktioniert super mit 3 oder mehr Zahlen. Bei nur einer kommt jenes hier:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at kgv.main(kgv.java:31)
Nu die Frage: wat?
if (tokens.length != 2) {
terminal.println("Blahblah2Zahlenblah");
} else {
blah hier kgv yay!
Problem is: Das funktioniert super mit 3 oder mehr Zahlen. Bei nur einer kommt jenes hier:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at kgv.main(kgv.java:31)
Nu die Frage: wat?
Re: Aufgabe 5: Exceptions
Code: Alles auswählen
if( tokens.length != 2 )
{
System.out.println( "Error! Two numbers excpected" );
continue;
}
// kgv usw.
Re: Aufgabe 5: Exceptions
Hast du vor der Abfrage, ob das tatsächlich nur 2 Einträge hat, schon versucht, die Strings in Integer umzuwandeln? Wenn ja, wäre die Fehlermeldung logisch...Blurio hat geschrieben:Problem is: Das funktioniert super mit 3 oder mehr Zahlen. Bei nur einer kommt jenes hier:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at kgv.main(kgv.java:31)
Nu die Frage: wat?
Re: Aufgabe 5: Exceptions
Ixh möchte nur anmerken, dass 09 keine zahl ist und da wir davon ausgehen sollen, dass nur zahlen eingegeben werden, darf dein programm da gerne mit exceptios um sich werfen.
Re: Aufgabe 5: Exceptions
09 ist ne Zahl, auf dem Aufgabenblatt wo gezeigt wird wie das ganze aussieht, wird auch mal 09 eingegeben.Hann0 hat geschrieben:Ixh möchte nur anmerken, dass 09 keine zahl ist und da wir davon ausgehen sollen, dass nur zahlen eingegeben werden, darf dein programm da gerne mit exceptios um sich werfen.