System.out.println(Math.round(1.1254567 * 100) / 100.0); so würde das schon funktionieren, aber verhält sich double * (double) 100 immer korrekt? S. bitte java.lang.Math.
@Bene : du bräuchtest bei deiner Version anfangs nur 0.005 hinzuzählen, dann gehts auch.
Das Problem dabei; Solange man das “gerundete” noch mal durch irgend etwas teilen muss, können im Ergebnis wieder Rundungsfehler auftreten. Die sicherste Methode bietet da der Umweg über String-Format.
System.out.println(myDouble);
double d = Double.parseDouble(String.format(Locale.ENGLISH, "%1.2f", myDouble));
System.out.println(d);```