In java, is it possible to use String.format to only show a decimal if there is actually a need? For example, if I do this:
String.format(\"%.1f\", amount);
No, you have to use DecimalFormat:
final DecimalFormat f = new DecimalFormat("0.##"); System.out.println(f.format(1.3)); System.out.println(f.format(1.0));
Put as many #s as you'd like; the DecimalFormat will only print as many digits as it thinks are significant, up to the number of #s.
#