如何将1000克格式化为1千克

Firdaus Afif

我想将以下数字格式化为Android旁边的数字:

我已经尝试过,方法是将代码从“如何在Android Studio中将1200格式化为1.2k”

当值是零的倍数时可以使用,但是如果存在一个非零的数字,则有些不适合

String numberString = "";
if (Math.abs(Integer.parseInt(weight_total) / 1000) > 1) {
   numberString = (Integer.parseInt(weight_total) / 1000) + " kg";
}
else {
   numberString = weight_total + " gram";
}
tvWeight.setText(": " + numberString);

我要1000克> 1公斤,1800克> 1.8公斤等

正确和错误的体重截图https://i.stack.imgur.com/mqA0x.jpg


现在我正在使用此代码,因此对于我的应用程序,它可以正常工作

// Input data
int weightInput = Integer.parseInt(item.getWeight());
String weightOutput;

if (weightInput < 1000) {
    weightOutput = weightInput + " gram";
} else {
    double result = weightInput / 1000.0;
    weightOutput = String.valueOf(result);
    weightOutput = (weightOutput.contains(".0") ? weightOutput.substring(0, weightOutput.length() - 2) : weightOutput) + " kg";
}

System.out.println(weightOutput);

最终结果https://i.stack.imgur.com/1Nxbs.png

三磷酸腺苷

Integer.parseInt转换Stringint
如果将其int除以int结果也将int如此。
改用Float.parseFloat()或除以1000.0(将1000设为非整数值,结果也将为非整数。)
如果您希望它更精确并计数毫克(甚至更小的单位),则必须使用,Float.parseFloat()因为该值点后将使用丢弃Integer.parseInt()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章