Java:设置String.format不显示0位小数

luc*_*uta 1 java string string-formatting

有没有办法设置String.format,以便它不会显示00小数?例如,我想:

String.format("%.2f", 12.345d)
Run Code Online (Sandbox Code Playgroud)

显示12.34 但是

String.format("%.2f", 12.3d)
Run Code Online (Sandbox Code Playgroud)

显示12.3而不是12.30

che*_*ohi 5

使用DecimalFormat设置四舍五入,如:

DecimalFormat df = new DecimalFormat("0.##");
df.setRoundingMode(RoundingMode.DOWN) //rounding off
df.format(12.345d) //12.34
df.format(12.3d) //12.3
df.format(12.00) //12
Run Code Online (Sandbox Code Playgroud)