Android:具有Double值的字符串格式

wyo*_*bum 18 java android string-formatting

我需要使用Formater创建一个String来显示一些双浮点值.我不清楚如何编码它.这是我有的:

Double dWeightInKg = 100;
Double dWeightInLbs = 220:
String headerText = String.format("%.0f kg / %.0f lbs",Double.toString(dWeightInKg) , Double.toString(dWeightInLbs));
Run Code Online (Sandbox Code Playgroud)

我正在寻找以下输出:

100 kg / 220 lbs
Run Code Online (Sandbox Code Playgroud)

我在String.format行上得到了一个runtimeexception - badArgumentType(formater).

Jus*_*son 32

%.0f是float的格式字符串,带有0个小数位.

传递给String.format的值是String,String,当需要Double,Double时.

您不需要将双精度转换为字符串.

String headerText = String.format("%.0f kg / %.0f lbs", dWeightInKg, dWeightInLbs);
Run Code Online (Sandbox Code Playgroud)


Ven*_*oid 8

这应该工作,

DecimalFormat df = new DecimalFormat("#.##");
private String convertToFormat(double value){

    return df.format(value);
}
Run Code Online (Sandbox Code Playgroud)