我有来 self 的 Activity 的 jdouble(double) 值,该值在打印时以科学记数法给出,即 E 格式。现在我想以十进制格式显示它并截断它,所以我在格式说明符中使用“%.2f”来做到这一点。但奇怪的是,“%f”格式说明符显示 0.000000 作为最终值。请提出一些建议。
P.S 我是在 Android 的 native 端执行此操作。
最佳答案
为了显示小数而不是 E 格式表示法并截断数字,您可以使用 NumberFormat:
NumberFormat formatter = new DecimalFormat("#0.000");
然后,您想在哪里使用您的号码:
formatter.format(yournumber)
例如:
Toast.makeText(context, "Truncated number: " + formatter.format(yournumber), Toast.LENGTH_LONG).show();
在这种情况下,您的号码将显示为小数点后 3 位。 添加您想要显示的小数位数的零。
关于android - 在 JNI 中将 double 科学记数法转换为十进制记数法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25158784/