// Die Klasse Eingabe soll die Eingabe von Zeichenketten und Zahlen von // Tastatur vereinfachen. Hierbei gibt es für jede der Methoden // String readString(), int readInt(), char readChar(), // double readDouble(), long readLong() auch eine Version, die // mit String als Parameter eine Eingabeaufforderung ausgibt, bevor // ein Wert ausgegeben wird. public class Eingabe { /** Methode zum Lesen (Tastatur) von String */ public static String readString() { int ch; String input = new String(""); boolean fertig = false; while (!fertig) { try { ch = System.in.read(); if (ch < 0 || (char) ch == '\n') fertig = true; else if ((char) ch != '\r') input = input + (char) ch; } catch (java.io.IOException e) { fertig = true; } } return input; } // readString public static String readString(String prompt) { System.out.print(prompt); return readString(); } /** Methode zum Lesen von int */ public static int readInt() { try { return Integer.parseInt(readString().trim()); } catch (NumberFormatException e) { System.out.println("Kein Integer!"); return 0; } } // readInt public static int readInt(String prompt) { System.out.print(prompt); return readInt(); } /** Methode zum Lesen von char */ public static char readChar() { try { return readString().charAt(0); } catch (IndexOutOfBoundsException e) { System.out.println("Kein Character!"); return ' '; } } // readChar public static char readChar(String prompt) { System.out.print(prompt); return readChar(); } /** Methode zum Lesen von double */ public static double readDouble() { try { return Double.parseDouble(readString().trim()); } catch (NumberFormatException e) { System.out.println("Kein Double!"); return 0; } } // readDouble public static double readDouble(String prompt) { System.out.print(prompt); return readDouble(); } /** Methode zum Lesen von long */ public static long readLong() { try { return Long.parseLong(readString().trim()); } catch (NumberFormatException e) { System.out.println("Kein Long!"); return 0; } } // readLong public static long readLong(String prompt) { System.out.print(prompt); return readLong(); } }