double类型的数据如何通过转换变为需要的字符串,急?
各位大哥,小弟碰到一个问题是:
数据库中的money类型的数据,通过hibernate,得到double型数据(如1.23456789E8的数据),但我要以字符串展示出来(即不能有"E"),我使用了NumberFormat,但不起作用, 请各位大哥帮忙?谢谢
[解决办法]
double d = 1.23456789E8d;DecimalFormat df = new DecimalFormat( "#.#" ); System.out.println(String.valueOf(df.format(d)));
[解决办法]
这个问题问得很及时,学习
留个名就可以
[解决办法]
请参考! Money比较敏感,建议楼主使用BigDecial 代替Double
private static NumberFormat nf = NumberFormat.getNumberInstance(); /** * 输出格式化的数字 * @param bd 数字 * @param fraction 小数点位数 * @param group 是否显示千分位的小数点 * @return */ public static String toString(double bd, int fraction, boolean group) { nf.setGroupingUsed(group); nf.setMaximumFractionDigits(fraction); nf.setMinimumFractionDigits(fraction); return nf.format(bd); } public static String toString(BigDecimal bd, int fraction, boolean group) { if (bd == null) { return ""; } nf.setGroupingUsed(group); nf.setMaximumFractionDigits(fraction); nf.setMinimumFractionDigits(fraction); return nf.format(bd); }
[解决办法]
我开始还以为是个很简单的问题那,同1楼想法一样,不过5楼方法挺有启发的