public String toString() { String vorname = this.getFirstName(); String nachname = this.getLastName(); String strasse = this.getStreet(); int postleitzahl = this.getZip(); String ort = this.getResidence(); GregorianCalendar geburtstag = this.getDateOfBirth(); String geburtsdatum = geburtstag.toString(); String fVisitenkarte = (vorname + " " + nachname + "\n" + strasse + "\n" + postleitzahl + " " + ort + "\n" + "Geboren am: " + geburtsdatum); return fVisitenkarte; } /** creates the following output Max Muster Bahnhofstrasse 30 8753 Näfels Geboren am: java.util.GregorianCalendar[time=?,areFieldsSet=false, areAllFieldsSet=true,lenient=true, zone=sun.util.calendar.ZoneInfo[id="Europe/Zurich", offset=3600000,dstSavings=3600000,useDaylight=true,transitions=121, lastRule=java.util.SimpleTimeZone[id=Europe/Zurich,offset=3600000, dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2, startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2, endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2, minimalDaysInFirstWeek=4,ERA=1,YEAR=1980,MONTH=8,WEEK_OF_YEAR=42, WEEK_OF_MONTH=3,DAY_OF_MONTH=6,DAY_OF_YEAR=288,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=3, AM_PM=0,HOUR=11,HOUR_OF_DAY=11,MINUTE=20,SECOND=33,MILLISECOND=752,ZONE_OFFSET=3600000,DST_OFFSET=3600000] */ // ok, noch ein Problem... System.out.println("Enter the salary."); double salary = keyboard.nextDouble(); this.setSalary(salary); /** Das ist ein Teil der Methode readInput(). Der Rest funktioniert problemlos, aber wenn ich eine floating point-Zahl eingebe, kommt folgende Fehlermeldung. Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:819) at java.util.Scanner.next(Scanner.java:1431) at java.util.Scanner.nextDouble(Scanner.java:2335) at Employee.readInput(Employee.java:235) at EmployeeTest4.main(EmployeeTest4.java:9) Wenn ich eine floating point - Zahl als Argument der Methode setSalary() gebe, kommt die Fehlermeldung nicht.