String str = "2378.000.000.000.00";我想把它格式化成String str = "2378.00";支取小数点后面两位

解决方案 »

  1.   

    DecimalFormat df = new DecimalFormat("##.##");
      

  2.   

    for(int i=0;i++;i<str.length)
    {}
      

  3.   

    DecimalFormat df = new DecimalFormat("##.##");对String类型不支持。
      

  4.   

    String str = "2378.000.000.000.00";
    String newStr = str.substring(0,str.indexOf(".")+3);
    System.out.println(newStr);
      

  5.   

    String inn = "2378.000.000.000.00.001";
    inn = inn.substring(0,inn.indexOf(".")+3);
    System.out.println(inn);
      

  6.   

    我觉得什么样的东西都不奇怪,关键是看你的这个数据是用来干什么的
    如果你做实际应用的话:
    先用:spilt(".")获得将这个字符串分割后形成的字符串数组,取你要的那段,然后在用subString()方法解析要前两位如果你做练习的话:
    那么你就直接解析字符串
      

  7.   

    public class FormatStr
    {
    public void change(String source)
    {
    int n=0;
    while(n<source.length())
    {
    if(source.charAt(n)=='.') //判断小数点
    {
    n=n+3;
    source=source.substring(0,n); //截断String进行格式转换
    break;
    }
    else n++;
    }
    System.out.print(source);

    }
    public static void main(String args[])
    {
    String s=new String("1204.040.0000"); //可以在这里修改不同的值,带入测试
    FormatStr dealstr = new FormatStr();
    dealstr.change(s); //调用FormatStr类的change方法
    }
    }