निम्नलिखित कोड,जावा 7 में एक इंट-टू-ऑब्जेक्ट तुलना मान्य क्यों है, लेकिन जावा 8 में नहीं?
private boolean compare(Object a, int b) {
return a == b;
}
जावा 7 में संकलित है, लेकिन यह जावा 8 में निम्न त्रुटि में परिणाम है:
अतुलनीय प्रकार: पूर्णांक और वस्तु
को देखते हुए निम्नलिखित प्रश्न:
Comparing Object and int in Java 7
ऐसा लगता है कि जावा 6 और जावा 8 आपको int
और Object
की तुलना करने की अनुमति न दें, जबकि 7 करता है। क्या इस पर कोई दस्तावेज है?
मुझे पृष्ठभूमि ज्ञान में दिलचस्पी है जो इन निर्णयों को सूचित करता है। ऐसा लगता है जैसे वे निराश थे या कुछ।
मैं IntelliJ IDEA 14.1.4 का उपयोग जेडीके 1.7.0.51 के साथ कर रहा हूं।
क्या एक्लिप्स में दिखाया गया त्रुटि है (यानी। Ecj का उपयोग करते समय) या जेडीके कंपाइलर द्वारा? मुझे लगता है कि यह ecj में एक त्रुटि है ... – Axel
यदि ऐसा है, तो मुझे लगता है कि जावा 7 ने गलती की है – dragon66
ओरेकल के जावा 7 के साथ, मुझे "असंगत ऑपरेंड प्रकार: ऑब्जेक्ट एंड इंट" मिलता है। क्या आप जावा 7 में संकलित किए गए सटीक कोड को प्रदान कर रहे हैं? –