使浮点数仅显示两位小数

我有值25.00float,但是当我打印在屏幕上它25.0000000
如何只显示两个小数位的值?

狐的传说
浏览 827回答 3
3回答

慕容708150

这与数字的存储方式无关,而与显示方式有关。将其转换为字符串时,必须舍入到所需的精度,在您的情况下为两位小数。例如:NSString* formattedNumber = [NSString stringWithFormat:@"%.02f", myFloat];%.02f告诉格式化程序您将格式化float(%f),并且应该将其四舍五入到两个位置,并用0s 填充。例如:%f = 25.000000%.f = 25%.02f = 25.00

白板的微信

以下是一些更正-//for 3145.559706迅捷3let num: CGFloat = 3145.559706print(String(format: "%f", num)) = 3145.559706print(String(format: "%.f", num)) = 3145print(String(format: "%.1f", num)) = 3145.6print(String(format: "%.2f", num)) = 3145.56print(String(format: "%.02f", num)) = 3145.56 // which is equal to @"%.2f"print(String(format: "%.3f", num)) = 3145.560print(String(format: "%.03f", num)) = 3145.560 // which is equal to @"%.3f"对象@"%f"    = 3145.559706@"%.f"   = 3146@"%.1f"  = 3145.6@"%.2f"  = 3145.56@"%.02f" = 3145.56 // which is equal to @"%.2f"@"%.3f"  = 3145.560@"%.03f" = 3145.560 // which is equal to @"%.3f"等等...
打开App,查看更多内容
随时随地看视频慕课网APP