Float四舍五入保留一位小數點
public class Test {
public static void main(String[] args){
double data1 = 3.35;
float data2 = 3.35f;
System.out.println(String.format("%.1f", data1));//輸出3.4 進行四舍五入小數點
System.out.println(String.format("%.1f", data2));//輸出3.3
// 強轉float為double類型 部分會失真
System.out.println((double)(data2));//輸出3.3499999046325684 所以會導致 第二結果為3.3
System.out.print(strOnePointOfFloat(5.54f)); // output 5.5
System.out.print(strOnePointOfFloat(5.56f)); // output 5.6
}
public static String strOnePointOfFloat(float f){
return String.format("%.1f", Double.valueOf(String.valueOf(f)));
}
}