2011-05-19 15 views

उत्तर

13

इसे स्वचालित रूप से परिवर्तित कर दिया जाएगा (इसे widening primitive conversions पर देखें)। यदि आप परिणाम float के रूप में चाहते हैं, तो आपको वापसी मूल्य स्पष्ट रूप से डालना होगा।

+1

धन्यवाद के लिए समान एक सटीक होना चाहिए। इसलिए मूल रूप से - इस फ़ंक्शन के साथ एक फ्लोट का पूर्णांक मान प्राप्त करने से मेरी फ्लोट डबल हो जाएगी और मुझे एक डबल वापस कर दिया जाएगा जिसे मुझे एक int में डालना चाहिए। यह धीमा लगता है। – Jeb

+0

@user: 'फ्लोट' से' डबल 'में कनवर्ट करने में लगभग शून्य समय लगना चाहिए। और आपके पास परिणाम बदलने के अलावा कोई विकल्प नहीं है! –

+2

यदि आप int मान प्राप्त करने के लिए केवल मंजिल (फ्लोट) का उपयोग कर रहे हैं ... बस सीधे int पर डालें। – Grod

4

नहीं, float आदिम स्वचालित रूप से किसी भी परिशुद्धता के नुकसान के बिना double पर डाला जाएगा।

3

एक डबल पर्याप्त संभवतः हर संभव फ्लोट और अधिक का प्रतिनिधित्व करने के लिए पर्याप्त है। आप किसी भी परिशुद्धता को खोने वाले नहीं हैं, कास्ट स्वचालित रूप से होता है।

0

आप केवल एक फ्लोट के रूप में फ्लोट पास कर सकते हैं क्योंकि एक फ्लोट के पास डबल से कम सटीकता होती है।

2

float और double, दोनों फ्लोटिंग पॉइंट डेटा प्रकार हैं जिनमें दोहरी बड़ी रेंज है। आप किसी भी समस्या के बिना Math.Floor (डबल) के साथ अपने फ्लोट वैरिएबल का उपयोग करने में सक्षम होना चाहिए।

8

हां, लेकिन जब एकल परिशुद्धता फ्लोट के लिए गति महत्वपूर्ण समर्थन प्रदान किया जाना चाहिए। Java.lang.Math

संबंधित मुद्दे