2011-11-17 10 views
7

जावा में फ्लोट टू इंटीजर को कैसे परिवर्तित करें?फ्लोट (रैपर क्लास) से इंटीजर रैपर क्लास को कैसे परिवर्तित करें?

Float value = 30.0F 

मूल्य से इंटीजर को कैसे परिवर्तित करें?

कृपया मेरी मदद करें?

उत्तर

8

उपयोग Float.intValue() डाली:

Integer i = value.intValue(); 

ध्यान दें कि यह autoboxing का कारण बनता है, लेकिन तुम वैसे भी एक Integer बनाने के लिए योजना बना रहे हैं के बाद से, यह जीत ' कोई प्रदर्शन प्रभाव नहीं है।

ध्यान दें कि आपको गोल करने पर ध्यान देना चाहिए: intValue() और int शून्य की ओर कास्ट दौर। Math.ceil() का उपयोग करने के लिए Math.floor() का उपयोग करने के लिए, निकटतम पूर्णांक के लिए गोल करने के लिए, Math.round() का उपयोग करें। अगर आपको किसी अन्य प्रकार की गोल करने की ज़रूरत है, तो आपको इसे स्वयं लागू करना होगा।

0

value.intValue() विधि का उपयोग करें।

Float value = 30.0F; 
Integer intValue=Integer.valueOf(value.intValue()); 
0

new Float(value).intValue() या simly यह int करने के लिए int v = (int) value

+0

वह चाहते हैं एक 'Integer', नहीं है एक 'int'। – uckelman

+0

आपका दूसरा उदाहरण काम नहीं करेगा (समय त्रुटि संकलित करें)। आपको '(int) (फ्लोट) मान 'करने की आवश्यकता होगी। – wchargin

1

इस प्रयास करें:

Float f = new Float(10.5); 
Integer i = new Integer((int)Math.ceil(f)); 

f.intValue() जाने का रास्ता है ..

+0

+1 क्योंकि यह आवश्यक गोलिंग स्पष्ट बनाता है (हालांकि आप इस पर थोड़ा विस्तार करना चाहते हैं) – Waldheinz

0

आप यह सिर्फ कर सकते हैं:

Float value = 30.0f; 
Integer intVal = value.intValue(); // auto-boxing happens here 
संबंधित मुद्दे