1 /** 2 * Java 两个整数相除保留两位小数,将小数转化为百分数 3 * java中,当两个整数相除时,由于小数点以后的数字会被截断,运算结果将为整数,此时若希望得到运算结果为浮点数,必须将两整数其一或是两者都强制转换为浮点数。 4 例如: 5 (float)a/b // 将整数其中一个强制转换为浮点数,再与另一个整数相除 6 a/(float)b 7 (float)a/(float)b // 将两个整数同时强制转换为浮点数后再相除 8 */ 9 10 11 ///////计算小数点的位数: 12 System.out.println("1/8="+1/(float)8); 13 14 float TT = Math.round(1/(float)8); //返回的是int型。 15 System.out.println("四舍五入小数:"+TT); 16 System.out.println("四舍五入小数2:"+Math.round(2.1546)); 17 18 ////方法1 19 double dd = (double) (Math.round(1/(float)8*100)/100.0); 20 System.out.println("dd="+dd); 21 // (double) (Math.round(sd3*10000)/10000.0); 这样为保持4位 22 23 ////方法2 24 DecimalFormat df2 = new DecimalFormat("###.00"); 25 DecimalFormat df3 = new DecimalFormat("###.000"); 26 27 System.out.println("转换2="+df2.format(1/(float)8)); 28 System.out.println("转换3="+df3.format(1.1256)); 29 30 ////方法3 31 // String ss = String.format("%10.2f%%", 1.1256); //1.13f 32 // String ss = String.format("%10.2f", 1.1256); // 1.13 33 String ss = String.format("%1.2f", 1.1256); //1.13 34 System.out.println("转换4="+ss); 35 36 ////方法4 37 double x=23.5455; 38 NumberFormat ddf1=NumberFormat.getNumberInstance() ; 39 ddf1.setMaximumFractionDigits(2); 40 String s= ddf1.format(x) ; 41 System.out.print("数字格式="+s); //四舍五入 23.55 42 43 ////方法5 44 float T = 0.1257f; 45 BigDecimal b = new BigDecimal(T); 46 T = b.setScale(2,BigDecimal.ROUND_HALF_UP).floatValue(); 47 System.out.println("保留2位小数:"+T);