【发布时间】:2021-01-03 15:33:04
【问题描述】:
我想用 Android 将以下数字格式化为它们旁边的数字:
我试过了,从How to go about formatting 1200 to 1.2k in Android studio获取代码
这在值是零的倍数时有效,但如果有一个不是零的数字,则有些不合适
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);
【问题讨论】:
-
android studio 是一个 IDE,这意味着它只是帮助您编写代码。除非您特别询问 IDE 的功能,否则请不要使用该标签
-
如果还需要四舍五入,见stackoverflow.com/questions/153724/…