是否有一种方法可以使NumberFormatter执行以下操作:
发布于 2017-01-15 03:40:19
double someNum = 5.6d;
DecimalFormat df = new DecimalFormat("#.#");
String num = df.format(someNum);
if (num.substring(num.length - 1).equals("0")) {
num = num.substring(0, num.length - 2);
}
System.out.println(num);DecimalFormat实例将double格式化为字符串。代码检查精度的第十位,即小数位右边的第一个数字,如果是零,则只显示整数。否则,它将显示出完整的精度。
发布于 2018-09-03 00:39:04
我知道这是个老生常谈的问题,但这应该符合你的要求:
var myNumber:Double = 0.0 // set to 5.0 or 5.6 to see result
let formatter = NumberFormatter()
formatter.maximumFractionDigits = 4
let x = formatter.string(from: NSNumber(value: myNumber)) ?? "$\(myNumber)"
print("x = \(x)")https://stackoverflow.com/questions/41657559
复制相似问题