मेरे पास एक आदिम फ्लोट है और मुझे एक आदिम डबल के रूप में आवश्यकता है। बस फ्लोट को डबल करने के लिए मुझे अजीब अतिरिक्त परिशुद्धता देता है। उदाहरण के लिए:
float temp = 14009.35F;
System.out.println(Float.toString(temp)); // Prints 14009.35
System.out.println(Double.toString((double)temp)); // Prints 14009.349609375
हालांकि, अगर कास्टिंग के बजाय, मैं फ्लोट को एक स्ट्रिंग के रूप में आउटपुट करता हूं, और स्ट्रिंग को डबल के रूप में पार्स करता हूं, मुझे वह मिलता है जो मुझे चाहिए:
System.out.println(Double.toString(Double.parseDouble(Float.toString(temp))));
// Prints 14009.35
क्या स्ट्रिंग और वापस जाने की तुलना में बेहतर तरीका है?