public static double getDoubleValue(){
      Stirng  value =  "1111.440";
      return Double.parseDouble(value);
}
当调用getDoubleValue()可以得到 1111.440 ,请问里面应该怎么写代码。我得到的是1111.44少了0,一定要得到0。这是重点。谢谢各位。

解决方案 »

  1.   

    String  value =  "1111.440";
    DecimalFormat df = new DecimalFormat();
    String pattern = "0.000";
    df.applyPattern(pattern);
    System.out.println(df.format(Double.parseDouble(value)));用数字的格式化吧
    具体的你自己再调一下
      

  2.   

    好像不行,关键是double 类型的函数,转换为double 时候他会省去最后为的0,
      

  3.   

    import java.text.DecimalFormat;
    public class getDoubleValue {
    public static void main(String[] args){
    System.out.println(getValue("1111.44000110"));
    }

    public static String getValue(String valueString){
    //String valueString="1111.440";
    int dotIndex=valueString.indexOf('.');//定位小数点
    int numberOf0=valueString.length()-1-dotIndex;//获取小数位数
    String pattern="0.";
    for (int i = 0; i < numberOf0; i++) {
    pattern=pattern+"0";//循环设定pattern
    }
    DecimalFormat dFormat=new DecimalFormat();
    dFormat.applyPattern(pattern);
    return dFormat.format(Double.parseDouble(valueString));
    }
    }
      

  4.   

    public static String getValue(String valueString) 是String类型啊。
    但是接口是
    public static double getValue(String valueString)
    double 有解决方案吗?
      

  5.   

    兄弟们题目有点变态,一点要double 类型。因为是接口规定的。
      

  6.   

    无语了,对于数字来说小数部分末尾有 0 和没有 0 值是一样的。你要显示那个 0 的话,你直接就使用你那个字符串就可以了,根本没必要转成 double