如何準確地圓整float value
,如1.449567
。在Objective-C中準確輸出所需小數點的圓形浮點值
輸出值應爲所需的小數點浮點值。
輸出應該是這樣的:
for 1 decimal point **f=1.5**
for 2 decimal point **f=1.45**
for 3 decimal point **f=1.450**
for 4 decimal point **f=1.4496**
如何準確地圓整float value
,如1.449567
。在Objective-C中準確輸出所需小數點的圓形浮點值
輸出值應爲所需的小數點浮點值。
輸出應該是這樣的:
for 1 decimal point **f=1.5**
for 2 decimal point **f=1.45**
for 3 decimal point **f=1.450**
for 4 decimal point **f=1.4496**
我建議考慮使用NSNumberFormatter。
例子:
float roundedValue =1.45999f;
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setMaximumFractionDigits:1];
[formatter setRoundingMode: NSNumberFormatterRoundDown];
NSString *numberString = [formatter stringFromNumber:[NSNumber numberWithFloat:roundedValue]];
我找出你的答案。我thk它爲我工作..感謝您的幫助... – 2013-04-26 08:37:02
@ Mr.Frank ..它是四捨五入任何一方只有NSNumberFormatterRoundDown或NSNumberFormatterRoundUp。如何有效地做到這一點...幫助我...例如小數點以下的數字4表示不需要圓形或小數點以上的數字5表示加1到前一個十進制數字。 我如何有效地做到這一點,沒有任何金額損失,因爲我在這裏湊錢。 – 2013-05-07 06:16:08
最好是用'formatter.roundingMode = NSNumberFormatterRoundHalfEven;' – 2013-05-08 15:19:00
根據我的數學知識,1.449四捨五入爲1.4,而不是1.5,如果四捨五入至小數點後一位...... – 2013-04-25 14:08:49
而1.450和1.4496。 – kennytm 2013-04-25 14:09:34
你沒有說清楚的是,你關心的是小數點後的位數,還是顯示的總位數(在你的「3」行中,數字將是「4」,而不管大小的浮動)。 – 2013-04-25 14:23:55