2012-06-21 9 views
37
में

यह एक पूर्णांक और जावा में एक लंबे तुलना करने के लिए ठीक है ठीक है ...यह एक पूर्णांक तुलना करने के लिए और एक लंबे जावा

long l = 800L 
int i = 4 

if (i < l) { 
// i is less than l 
} 
+0

कोई कारण यह नहीं हो सकता है? – bestsss

+0

जब आपने कोशिश की तो क्या हुआ? – EJP

उत्तर

63

हाँ, यह ठीक है। int को long पर स्पष्ट रूप से परिवर्तित कर दिया जाएगा, जो हमेशा जानकारी के किसी भी नुकसान के बिना किया जा सकता है।

+0

बस एक परिदृश्य जोड़ने के लिए जो आया था। 'int = = integer.MAX_VALUE; लंबे बी = ए; 'निम्नलिखित झूठी देता है। 'प्रिंट (ए + 1> बी) 'लगता है कि' ए + 1' 'int' –

+0

@WeishiZeng के रूप में संग्रहीत होने के बाद अंतर्निहित रूपांतरण होता है: हाँ, बिल्कुल। 'ए + 1' में दोनों ऑपरेशंस 'int' हैं - ताकि अतिरिक्त' int 'अंकगणित में होता है, फिर' लंबा 'रूपांतरण, फिर तुलना। –

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