Java Android:双值字符串格式
我需要使用格式化程序创建一个字符串来显示一些双浮点值。我不清楚如何编写代码。以下是我所拥有的:Java Android:双值字符串格式,java,android,string-formatting,Java,Android,String Formatting,我需要使用格式化程序创建一个字符串来显示一些双浮点值。我不清楚如何编写代码。以下是我所拥有的: Double dWeightInKg = 100; Double dWeightInLbs = 220: String headerText = String.format("%.0f kg / %.0f lbs",Double.toString(dWeightInKg) , Double.toString(dWeightInLbs)); 我正在寻找以下输出: 100 kg / 220 lbs 我
Double dWeightInKg = 100;
Double dWeightInLbs = 220:
String headerText = String.format("%.0f kg / %.0f lbs",Double.toString(dWeightInKg) , Double.toString(dWeightInLbs));
我正在寻找以下输出:
100 kg / 220 lbs
我在String.format行上得到一个runtimeexception-badArgumentType(格式化程序)
DecimalFormat df = new DecimalFormat("#.##");
private String convertToFormat(double value){
return df.format(value);
}
%.0f是浮点的格式字符串,小数点后0位 传递给String.format的值是String,String,当它需要是Double,Double时 不需要将双精度转换为字符串
String headerText = String.format("%.0f kg / %.0f lbs", dWeightInKg, dWeightInLbs);
您不需要Double.ToString(),因为您的格式化程序已经需要一个数字。试试这个:
String headerText = String.format("%.0f kg / %.0f lbs", dWeightInKg , dWeightInLbs);
谢谢你的回复。我早该知道的!此外,您将看到提示,提示您应该显式地确定
String.format()
的区域设置。避免此提示可能会导致应用程序中出现错误。更多信息:谢谢你的回复。我应该先睡一觉再问!!谢谢你的回复。其实很简单。