首先把199.999保留一位有效数字:199.9
然后再把199.9转化成欧洲一些国家的表示方法:199,9(这里的逗号是小数位)谢谢各位了!
然后再把199.9转化成欧洲一些国家的表示方法:199,9(这里的逗号是小数位)谢谢各位了!
解决方案 »
- 怎么判断一个16进制的数是否为合法的16进制码(且不为乱码)
- j2se编写超级玛丽小游戏和大家分享下
- !!~java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver
- fckeditor 传值是时有问题
- Tomcat6.0 是如何加载和编译JSP文件的
- 如何实现通过一个TextField输入多个数据
- jdk
- socket传输图片的小练习,有点小错误大神帮忙看下。。
- System.exit(0);
- 一个头疼的问题,请对java多态性有深入了解的高手给予关注
- 匿名内部类
- JavaBean 和对应的 BeanInfo,以及属性编辑器怎么关联起来?
double d = 199.999;
String s = String.valueOf(d);
int index = s.indexOf(".");
String s1 = s.substring(0, index + 2).replace(".", ",");
System.out.println(s1);
double d = 199.999;
String s = String.valueOf(d).replaceAll("(\\d+)[.](\\d)\\d+", "$1,$2");
System.out.println(s);
String s = String.valueOf(d);
int index = s.indexOf(".");
String s1 = s.substring(0, index + 2).replace(".", ",");
System.out.println(s1);
2. 四舍五入转int
3. 转字符串
4. 倒数第二位那里插入一个,分隔符
import java.util.*;
public class Test {
public static void main(String args[]) {
Locale de = new Locale("de","DE");//使用德国风俗。
Locale old = Locale.getDefault();
Locale.setDefault(de);
System.out.printf("Germany locale %.1f", 19.999-0.05);//java是四舍五入的,我没找到开关所以用个小技巧就能保证是舍去。
Locale.setDefault(old);
System.out.println();
System.out.printf("China locale %.1f", 19.999-0.05);//同上
}
}
具体参看《java核心技术第2卷》国际化那章。
BigDecimal n2 = n.setScale(1, BigDecimal.ROUND_FLOOR);
String str = n2 + "";
str = str.replace(".",",");
System.out.println(str);
float scale = 34.236323;
DecimalFormat fnum = new DecimalFormat("##0.0");
String dd=fnum.format(scale);
System.out.println(dd);
然后部分:replace(".",",")