2011-03-04 9 views

उत्तर

19

हाँ, java.math.BigDecimal क्लास का उपयोग काफी बेहतर परिशुद्धता प्रदान करता है। यह महान परिशुद्धता के साथ संख्याओं का प्रतिनिधित्व कर सकते हैं।

यदि आपको केवल विशाल पूर्णांक की आवश्यकता है, तो आप इसके बजाय java.math.BigInteger का उपयोग कर सकते हैं।

वे दोनों java.math.Number का विस्तार करते हैं।

तुम भी अपने मौजूदा युगल उपयोग कर सकते हैं अगर आप की जरूरत है:

double d = 67.67; 
BigDecimal bd = new BigDecimal(d); 

और तुम JDBC के साथ डेटाबेस से बाहर BigDecimal मूल्यों को प्राप्त कर सकते हैं:

ResultSet rs = st.executeQuery(); 
while(rs.next()) { 
    BigDecimal bd = rs.getBidDecimal("column_with_number"); 
} 

दुर्भाग्य से, के बाद से जावा ऑपरेटर ओवरलोडिंग का समर्थन नहीं करता , आप सामान्य गणितीय परिचालनों के लिए नियमित प्रतीकों का उपयोग नहीं कर सकते जैसे कि आप सी # और decimal प्रकार में होंगे।

आप इस तरह कोड लिखने की आवश्यकता होगी:

BigDecimal d1 = new BigDecimal(67.67); 
BigDecimal d2 = new BigDecimal(67.68); 
BidDecimal d3 = d1.add(d2); // d1 + d2 is invalid 
2

हाँ: java.math.BigDecimal वर्ग।

1

हां, आप BigDecimal जैसे मनमाने ढंग से सटीक वर्ग का उपयोग कर सकते हैं।

1

आप उपयोग कर सकते हैं एक BigDecimal

BigDeciamls साथ साथ गणना करने के लिए इस वर्ग विशेष तरीकों कि मानक ऑपरेटरों के बजाय जैसे उपयोग किया जाता है प्रदान करता है + - */... कि आप int, डबल और इतने पर ...

0

आपके इनपुट की सीमा पर निर्भर करता है। कई बार, आप केवल int या long का उपयोग कर सकते हैं। पैसे के लिए, केवल पैनीज़ की पूर्णांक संख्या स्टोर करें। int $ 20,000,000.00 तक संभाल लेगा जो मेरे बैंक खाते के लिए काफी बड़ा है। लंबे समय तक बहुत अधिक चला जाता है।

यदि आपकी सीमा उपयुक्त है, तो लंबे समय तक बिगडेसिमल

का उपयोग करने से अधिक तेज़ और क्लीनर का उपयोग करना उचित है
संबंधित मुद्दे