什麼對象類型用於存儲金額?我有一個UITextField
用戶可以輸入美元數額,我將轉換爲另一種貨幣,我想知道在哪種類型存儲金額(float
/double
是不好的錢),以及要選擇什麼爲那個領域的鍵盤?持有金額對象
Q
持有金額對象
-1
A
回答
1
我會建議使用NSDecimalNumber。此外,你將要使用類似的方法:
- (NSDecimalNumber *)decimalNumberByAdding:(NSDecimalNumber *)decimalNumber withBehavior:(id <NSDecimalNumberBehaviors>)behavior
在更基本的
- (NSDecimalNumber *)decimalNumberByAdding:(NSDecimalNumber *)decimalNumber
由於可以提供行爲之一是:
NSRoundBankers
回合到儘可能最接近的回報價值;當 在兩種可能性的中間時,返回最後的 數字是偶數的可能性。實際上,這意味着,從長遠來看, 號碼將按照向下舍入的次數四捨五入;有 將沒有系統的偏見。
當然也可以使用NSDecimal,但我更喜歡NSDecimalNumber的OO API,而不是NSDecimal的基於C的API。
4
您可以使用NSDecimal或NSDecimalNumber它們是精確的,存儲爲基數爲10的數字,不像float或double。
1
你應該做以下事情
- 套裝鍵盤類型小數
- 設置在鍵盤附件視圖(不是強制性的)
- 的文本框應用,一旦用戶使用了正則表達式的浮動 點(。)他將不被允許重新輸入。
- 在文本框編輯完成,你可以將它保存爲NSDecimal
1
我會用NSDecimalNumber 或NSDecimal,因爲他們在base10存儲。
對於鍵盤,有Decimal pad。
相關問題
- 1. 將金額添加到不存在的現有金額
- 2. 總金額的更新金額
- 3. c輸入金額的最小金額
- 4. NetSuite發票金額支付金額
- 5. Sql Server MAX的金額(金額)
- 6. 如何加入一對多並保持相同的總金額
- 7. TreeView持有對象
- 8. Activerecord額外金額列
- 9. 限額複選框金額
- 10. 總額和部分金額
- 11. SUMIF金額
- 12. 金額用C
- 13. 金額加總
- 14. MongoDB的收藏總金額多個對象
- 15. javascript對象持有jquery對象?
- 16. Python對象持有對象的字典()
- 17. 如何對Oracle激勵補償中的佣金金額執行上限/限額?
- 18. 01價值對總金額的差異
- 19. 對象沒有屬性 - 金字塔
- 20. 選擇最多n個金額(考慮一些記錄有相同的金額)
- 21. c#計算金額
- 22. session_start()現金限額
- 23. MIPS金額(阿迪)
- 24. 自定義「金額」
- 25. JQgrid總金額排
- 26. PHP:比較金額
- 27. Twitter推特金額
- 28. 動態金額'.parent'
- 29. 計算總金額
- 30. 與金額最高