double s=Double.valueOf("123").doubleValue()
DecimalFormat formatter = new DecimalFormat("###,##0.00");
String ns = formatter.format(s);

解决方案 »

  1.   

    也可以用BigDecimal,指定舍入方法和舍入位数,再转成float就行
      

  2.   

    123.459x100=12345.9 取整,Integer.parseInt(变量) 再除100
      

  3.   

    import java.text.NumberFormat;
    import java.text.ParseException;public class TestNumberFormat{
    public static void main(String[] args){
    try{

    final float data = 12.345f;
    NumberFormat nf = NumberFormat.getNumberInstance(java.util.Locale.CHINA);
    nf.setMaximumFractionDigits(2);  //两位小数                           String sData = nf.format(data);    //这里把你得到的输入的字符串传入
    System.out.println(sData);
    float value = nf.parse(sData).floatValue();
    System.out.print(value);
    }catch(ParseException e){
    e.printStackTrace();
    }
    }
    }
      

  4.   

    import java.text.DecimalFormat;public class TestNumberFormat{
    public static void main(String[] args)
           {
    double data_first = 12.345d;//data_first为变换前的数据
            System.out.println(data_first);
            DecimalFormat f = new DecimalFormat(".##");//小数只有两位
            String data_end = f.format(data_first);//data_end为变换后的数据
            System.out.println(data_end);
     
    }
    }
    楼主给分啊