四舍五入的函数如下 我想四舍五入后保留两位小数
public double toDouble2(double dou) {
BigDecimal bd = new BigDecimal(dou);
BigDecimal bd1 = bd.setScale(2, bd.ROUND_HALF_UP);
dou = bd1.doubleValue();
return dou;
}
double hehe=this.toDouble2(10000.0*1000000000/1220.0*2440.0*3.0);
System.out.println(hehe);
输出来的值是6.0E13 这个肯定是不正确的
正确的值应该是 1119770.6709665860431783570724716
然后四舍五入之后的值应该是 1119770.67
现在就是求求大家 我应该怎么才能得到我想要的值
public double toDouble2(double dou) {
BigDecimal bd = new BigDecimal(dou);
BigDecimal bd1 = bd.setScale(2, bd.ROUND_HALF_UP);
dou = bd1.doubleValue();
return dou;
}
double hehe=this.toDouble2(10000.0*1000000000/1220.0*2440.0*3.0);
System.out.println(hehe);
输出来的值是6.0E13 这个肯定是不正确的
正确的值应该是 1119770.6709665860431783570724716
然后四舍五入之后的值应该是 1119770.67
现在就是求求大家 我应该怎么才能得到我想要的值
public static String SicenToComm(double value) {
String retValue = null;
DecimalFormat df = new DecimalFormat();
df.setMinimumFractionDigits(2);
df.setMaximumFractionDigits(2);
retValue = df.format(value);
retValue = retValue.replaceAll(",", "");
return retValue;
}
比如就是30000000 这是我清清楚楚的在一个数据库里面看见的
也就是sql server 2005 里面用查询分析器里面看见的
但是当我在页面中用rs.getString("对应的列名")的时候去出来的却是科学技术法
我现在在想如果我不用楼上的办法解决的话 那么我可不可以把数据库里面的
对应的类型变换成varchar