2 o19830015 o19830015 于 2013.02.20 14:04 提问

要求只显示小数点后两位

得到GTotal的值,举例: 179.257856

但是要求只显示小数点后两位,也就是这样: 179.25

    @Override
    protected void onResume() 
    {
        super.onResume();
        if (Constants.mItem_Detail.size() == 0) 
        {
            return;
        }

        Double mGTotal = Double.parseDouble(Constants.mItem_Detail.get(0).get(SingleProductActivity.KEY_TOTAL));
        for (int i = 1; i < Constants.mItem_Detail.size(); i++) 
        {   
        mGTotal = mGTotal + Double.parseDouble(Constants.mItem_Detail.get(i).get(SingleProductActivity.KEY_TOTAL));
        }
        mGrandTotal = String.valueOf(mGTotal);
        mTxtViewGrandTotal.setText(mGrandTotal);
        myTextVeiwGrandTotal.setText(mGrandTotal);
        mTotal = String.valueOf(Constants.mItem_Detail.size());
        mItems.setText(mTotal);

}
}

3个回答

Kakalapa1986
Kakalapa1986   2013.02.20 14:54
已采纳

你已经完成的差不多了,我想加上下面的代码就行了。

 mTxtViewGrandTotal.setText(new DecimalFormat("##.##").format(mGTotal));

完整的方法就是:

   @Override
    protected void onResume() 
    {
        super.onResume();
        if (Constants.mItem_Detail.size() == 0) 
        {
            return;
        }

        Double mGTotal = Double.parseDouble(Constants.mItem_Detail.get(0).get(SingleProductActivity.KEY_TOTAL));
        for (int i = 1; i < Constants.mItem_Detail.size(); i++) 
        {   
        mGTotal = mGTotal + Double.parseDouble(Constants.mItem_Detail.get(i).get(SingleProductActivity.KEY_TOTAL));
        }
        mGrandTotal = String.valueOf(mGTotal);
        mTxtViewGrandTotal.setText(mGrandTotal);
        myTextVeiwGrandTotal.setText(mGrandTotal);
        mTxtViewGrandTotal.setText(new DecimalFormat("##.##").format(mGTotal));
        mTotal = String.valueOf(Constants.mItem_Detail.size());
        mItems.setText(mTotal);

}
h072056218
h072056218   2015.12.16 10:31

建议使用:DecimalFormat("#0.00")。因为使用“##.##”时如果你的数字刚好是“180.00”时调整的结果将没有小数位“180”,
如果你的数字是0.25时将没有前面的0,结果显示为“.25”。如果你的数字刚好是一列显示就存在格式不统一的问题,所以建议使用“#0.00”,
其中的“0”表示没默认值。

cn_liunan
cn_liunan 你好 为什么我用DecimalFormat回出现白屏后跳到主页面???
3 个月之前 回复
u014493124
u014493124 谢谢
10 个月之前 回复
u014493124
u014493124 我就出现这个问题了
10 个月之前 回复
loFataMer
loFataMer   2013.02.20 14:14

Decimalformat

DecimalFormat df = new DecimalFormat("#.##");
System.out.println(df.format("179.257856"));// which gives result as 179.25
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!