I need to round to nearest 0.5 if possible.
10.4999 = 10.5
Here is quick code:
import java.text.DecimalFormat;
import java.math.RoundingMode;
A more general solution to @RobWatt's answer in case you ever want to round to something else:
private static double roundTo(double v, double r) {
return Math.round(v / r) * r;
}
System.out.println(roundTo(6.1, 0.5)); // 6.0
System.out.println(roundTo(10.4999, 0.5)); // 10.5
System.out.println(roundTo(1.33, 0.25)); // 1.25
System.out.println(roundTo(1.44, 0.125)); // 1.5