मैं उस मामले का विश्लेषण कर रहा था जहां DecimalFormat
गोलाकार एक BigDecimal
संख्या और अन्य मशीन पर, इसे छोटा कर दिया गया है।DecimalFormat विभिन्न मशीनों पर दो अलग-अलग परिणामों में परिणाम
मैंने दोनों मशीनों पर सभी कॉन्फ़िगरेशन सत्यापित किए हैं (और सभी समान हैं, मुझे लगता है)। केवल अंतर जो मैंने पाया है वह जेडीके संस्करण है।
मशीन 1 जेडीके 1.6 पर चल रहा है। लेकिन, मैंने मशीन 1 पर जेडीके 1.7 के साथ भी कोशिश की है, यह जेडीके 1.6 के समान काम कर रहा है।
DecimalFormat decimalFormat = new DecimalFormat("#,###.00");
BigDecimal anObject = new BigDecimal("3.8880");
String str = decimalFormat.format(((Number)anObject).doubleValue());
System.out.println(str);
मशीन 1 परिणाम पर है: 3.39
मशीन 2 परिणाम पर है: 3,38
मुझे नहीं लगता कि संख्या 3.8880 को गोल या 3.38 या 3.3 9 तक छोटा कर दिया जा सकता है। क्या आपका मतलब 3.88/3.89 है? या आपने परीक्षण सही तरीके से नहीं किया? –
कमांड प्रॉम्प्ट "जावा-वर्जन" पर चलाने का प्रयास करें। शायद सिर्फ एक जेवीएम बग। – Aris2World