Normal
Oder Du nimmst eine Methode, die entweder eine Zahl oder null zurückgibt. Letzteres nur, wenn eine Leerzeile eingegeben wurde. Zusammengeschustert:[code=Java] private static Double liesDezimalzahl(String prompt) { Double result = null; boolean done; String errMsg = "Bitte nur positive Dezimalzahlen eingeben"; do { done = true; System.out.print(prompt); String zeile = sc.nextLine(); if (!zeile.isEmpty()) { try { result = Double.parseDouble(zeile); if (result <= 0.0) { result = null; } } catch (NumberFormatException ex) { // nichts zu tun } if (result == null) { done = false; System.out.println(errMsg); } } } while (!done); return result; }[/code]
Oder Du nimmst eine Methode, die entweder eine Zahl oder null zurückgibt. Letzteres nur, wenn eine Leerzeile eingegeben wurde. Zusammengeschustert:
[code=Java]
private static Double liesDezimalzahl(String prompt) {
Double result = null;
boolean done;
String errMsg = "Bitte nur positive Dezimalzahlen eingeben";
do {
done = true;
System.out.print(prompt);
String zeile = sc.nextLine();
if (!zeile.isEmpty()) {
try {
result = Double.parseDouble(zeile);
if (result <= 0.0) {
result = null;
}
} catch (NumberFormatException ex) {
// nichts zu tun
if (result == null) {
done = false;
System.out.println(errMsg);
} while (!done);
return result;
[/code]