मैं अपने प्रोजेक्ट में डबल मान का उपयोग करता हूं और मैं हमेशा पहले दो दशमलव अंक दिखाना चाहता हूं, भले ही वे शून्य हों। मैं गोल करने के लिए इस फ़ंक्शन का उपयोग करता हूं और यदि मेरे द्वारा मुद्रित मान 3.47233322 है (सही ढंग से) 3.47 प्रिंट करता है। लेकिन जब मैं प्रिंट करता हूं, उदाहरण के लिए, मान 2 यह प्रिंट करता है 2.0।जावा: डबल: हमेशा दो दशमलव अंकों को कैसे दिखाएं
public static double round(double d) {
BigDecimal bd = new BigDecimal(d);
bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
return bd.doubleValue();
}
मैं 2.00 प्रिंट करना चाहता हूं!
क्या स्ट्रिंग्स के बिना ऐसा करने का कोई तरीका है?
धन्यवाद!
संपादित करें: आपके उत्तरों से (जिसमें मैं आपको धन्यवाद देता हूं) मैं समझता हूं कि मैं यह जानने में स्पष्ट नहीं था कि मैं क्या खोज रहा हूं (और मुझे इसके लिए खेद है): मुझे पता है कि संख्या के बाद दो अंक कैसे मुद्रित करें आपके द्वारा प्रस्तावित समाधानों का उपयोग करके ... मैं जो चाहता हूं वह दो अंकों में सीधे दो अंकों में स्टोर करना है! इसलिए जब मैं इस System.out.println("" + d)
(जहां डी मूल्य 2 के साथ मेरा डबल है) ऐसा कुछ करता है तो यह 2.00 प्रिंट करता है।
मुझे लगता है कि ऐसा करने का कोई तरीका नहीं है ... सही? फिर भी आपके उत्तरों के लिए धन्यवाद, अगर आपको समाधान पता है तो कृपया मुझे बताएं!
मुझे नहीं लगता कि आप जिस तरह से जावा भंडार डबल मूल्यों को बदल सकते हैं। प्रस्तुत किए जाने पर आप केवल प्रारूपित तरीके को संशोधित कर सकते हैं। –
हाँ ... मुझे लगता है कि आप सही हैं ... मुझे हर बार जब मैं उन्हें उपयोगकर्ता को दिखाता हूं तो मुझे अपने मूल्यों को प्रारूपित करना होगा ... बहुत बार! आपके उत्तर के लिए धन्यवाद! – aveschini
ठीक है, आपको केवल एक बार फॉर्मेटर विधि लिखनी है, मैं इसके बारे में चिंता नहीं करता। ;) –