请问如何把float指定位数进行四舍五入? ieee743不精确,最好用BigDecimal 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static String formatKagaku(String str, int flag) { if (str == null || str.equals("")) { str = ""; } if(str.indexOf('.') == -1){ if (flag == 1) { str = str + ".0"; }else{ } return str; } String temp = str.substring(str.indexOf('.')); double input = Double.parseDouble("0" + temp); String syuSu = str.substring(0,str.indexOf('.')); if (flag == 1) { input = input * 10; input = Math.round(input); input = input / 10; BigDecimal big = new BigDecimal(input + Double.parseDouble(syuSu)); str = "" + big; if(str.indexOf('.') == -1){ str = str + ".0"; } } else if (flag == 0) { input = Math.round(input); BigDecimal big = new BigDecimal(input + Double.parseDouble(syuSu)); str = "" + big; } return str; } sysmaster(为什么我还不懂) ,i want to know too.. 可以设置有效数字输出啊。如果不光要输出,设置有效数字,给输出流,流给float。 import java.text.*;class test{ public static void main(String args[]) { double d = 2.225222222222; NumberFormat nf = new DecimalFormat(); nf.setMaximumFractionDigits(2); System.out.println (nf.format(d)); } } 1位小数就是Math.round(XX*10)/102位小数就是Math.round(XX*100)/100 查找指定字符串,将截取的字符串赋给数组 字符转换的问题 问一个问题? 有两个窗口,b窗口(b类)由a窗口(a类)打开,现在把b窗口关闭后a窗口重新获得焦点,在得到焦点后想先执行一段代码。要怎么触发 看TIJ3e第11章遇到的几个问题 如何在java下画曲线图? 中国人的J2EE应用服务器:金蝶Apusic应用服务器V4.0今日发布 请问编译java程序出现的一个问题 JFrame 怎样改变大小,如何最大化? 如何获取java程序当前的使用内存呢? 一个字符串的问题 请高手指点!
str = "";
}
if(str.indexOf('.') == -1){
if (flag == 1) {
str = str + ".0";
}else{
}
return str;
}
String temp = str.substring(str.indexOf('.'));
double input = Double.parseDouble("0" + temp);
String syuSu = str.substring(0,str.indexOf('.'));
if (flag == 1) {
input = input * 10;
input = Math.round(input);
input = input / 10;
BigDecimal big = new BigDecimal(input + Double.parseDouble(syuSu));
str = "" + big;
if(str.indexOf('.') == -1){
str = str + ".0";
}
} else if (flag == 0) {
input = Math.round(input);
BigDecimal big = new BigDecimal(input + Double.parseDouble(syuSu));
str = "" + big; }
return str;
}
{
public static void main(String args[])
{
double d = 2.225222222222;
NumberFormat nf = new DecimalFormat();
nf.setMaximumFractionDigits(2);
System.out.println (nf.format(d));
}
}