0

在我的 android 应用程序中,我使用此代码找到其他 2 个计数器的百分比

double total1 =  counter + counter1;
double totaal2 = counter / total1 * 100.0;
            percentfield.setText("" + total2);

当百分比字段显示 50%、25% 等时,我的代码效果很好。但它显示 33.33333333333% 有没有办法缩短我的百分比字段也只显示 33.3

编辑 我在 layout.xml 下用这段代码把它缩短了

android:maxLength="3" 
4

3 回答 3

0

使用 DecimalFormat 将双打格式设置为字符串。

例如

double total1 =  counter + counter1;
double totaal2 = counter / total1 * 100.0;

DecimalFormat formatter = new DecimalFormat("#0.0");
percentfield.setText(formatter.format(total2));

请参阅有关 DecimalFormat 的文档: Decimal Format JavaDoc

于 2013-07-31T18:12:11.587 回答
0

尝试这个:

    totaal2  = totaal2  * 10;
    totaal2  = Math.round(totaal2 );
    totaal2  = totaal2  / 10;
于 2013-07-31T17:50:32.303 回答
0

可以通过多种方式来完成。更好地使用这种方法,我发现这很长一段时间,它对我有用:

public static double round(double unrounded, int precision, int roundingMode)
{
BigDecimal bd = new BigDecimal(unrounded);
BigDecimal rounded = bd.setScale(precision, roundingMode);
return rounded.doubleValue();
}

例如,round(yourNumber, 3, BigDecimal.ROUND_HALF_UP);

于 2013-07-31T18:06:40.420 回答