जावा BigDecimal
पार्सिंग के लिए मैं किस डेटा प्रकार का उपयोग कर सकता हूं? उद्देश्य में - सी NSDecimalNumber
का उपयोग करके किया जा सकता है। क्या मेरे पास स्विफ्ट-मूल समाधान है (NSDecimalNumber
का उपयोग किए बिना)?स्विफ्ट में जावा बिगडेसिमल
7
A
उत्तर
7
यह हो सकता है कि आप क्या चाहते हैं, जैसा कि आप स्विफ्ट-मूल समाधान कह रहे हैं। लेकिन स्विफ्ट 3 में, एक पुराने सी-स्ट्रक्चर आधारित NSDecimal
को Decimal
के रूप में आयात किया गया है, और इसके लिए एक बड़ी पुन: व्यवस्था "यह लगभग स्विफ्ट-मूल" कहने के लिए किया गया है।
let deca = 1.23 as Decimal //<- This actually may produce some conversion error, while `ExpressibleByFloatLiteral` uses `Double` as an intermediate value.
let decb = 0.01 as Decimal
print(deca + decb == 1.24) //->true
अद्यतन जोड़ा गया एक सरल उदाहरण है, जहां आप डबल में एक गणना त्रुटि (बाइनरी चल अंक प्रणाली) मिल सकता है। (एक्सकोड 8 बीटा में परीक्षण 6.)
let dblc = 0.000001
let dbld = 100 as Double
let dble = 0.0001
print(dblc * dbld == dble) //->false (as Double cannot represent decimal fractions precisely)
let decc = Decimal(string: "0.000001")! //<- avoiding conversion error
let decd = 100 as Decimal //<- integer literal may not generate conversion error
let dece = Decimal(string: "0.0001")!
print(decc * decd == dece) //->true
संबंधित मुद्दे
- 1. बिगडेसिमल
- 2. बिगडेसिमल
- 3. बिगडेसिमल (डबल) कन्स्ट्रक्टर
- 4. बिगडेसिमल और मनी
- 5. बिगडेसिमल, सटीक और स्केल
- 6. बिगडेसिमल शून्य से गुणा
- 7. बिगडेसिमल का विस्तार?
- 8. नैशर्न अब बिगडेसिमल
- 9. बिगडेसिमल सेटस्केल और राउंड
- 10. जावा बिगडेसिमल दशमलव और पीछे की संख्या को हटाएं
- 11. बिगडेसिमल को इंटीजर में कनवर्ट करना
- 12. प्ले फ्रेमवर्क ईबीन बिगडेसिमल अंश
- 13. बिगडेसिमल स्ट्रिप ट्रायलिंग ज़ीरो शून्य
- 14. आप MySQL में जावा/हाइबरनेट में बिगडेसिमल को किस प्रकार से मानचित्रित करेंगे?
- 15. जावा स्विफ्ट लाइब्रेरी
- 16. रूबी बिगडेसिमल सैनिटी चेक (फ्लोटिंग पॉइंट न्यूब)
- 17. जावा के स्विफ्ट समकक्ष .toString()
- 18. स्विफ्ट
- 19. स्विफ्ट
- 20. स्विफ्ट
- 21. स्विफ्ट में
- 22. स्विफ्ट
- 23. स्विफ्ट कनवर्टर के लिए जावा कोड
- 24. स्विफ्ट
- 25. स्विफ्ट
- 26. स्विफ्ट
- 27. बिगडेसिमल का उपयोग कैसे अनुप्रयोग प्रदर्शन को प्रभावित करेगा?
- 28. बिगडेसिमल (डबल डी) निर्माण अभी भी क्यों है?
- 29. स्विफ्ट
- 30. जावा में मौद्रिक मानों का प्रतिनिधित्व
बस 'NSDecimalNumber' का उपयोग करें। यह स्विफ्ट से ठीक काम करता है। – Rob
आप समझ में नहीं आते हैं। मैं स्विफ्ट समाधान के लिए मूल चाहता हूं (बेशक, यदि मौजूद है)। – SerjOxo
मुझे समझ में आता है। एक "मूल" समाधान मौजूद नहीं है। लेकिन 'NSDecimalNumber' ठीक काम करता है। और यदि आप चाहते हैं, तो आप ऑपरेटरों को परिभाषित कर सकते हैं जो इसे देशी समाधान की तरह व्यवहार करते हैं ताकि ऑपरेटरों जैसे '+', '-', आदि काम कर सकें। – Rob