दिलचस्प पोस्ट
पायथन कक्षा में तरीकों की सूची कैसे प्राप्त करूं? कैसे पूरे regex नकारना? सापेक्ष पथ और जावास्क्रिप्ट में पूर्ण पथ के बीच का अंतर Django खोल से पायथन स्क्रिप्ट कार्यान्वित स्पार्क में पंक्तियां सपाट jQuery खींचने योग्य और अतिप्रवाह समस्या कैसे तय करें: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: संस्करण CXXABI_1.3.8 'नहीं मिला ( के लिए आवश्यक) सीएसएस का उपयोग कर एक लिंक डालें क्रॉस डोमेन कुकीज स्विफ्ट में "इंडेक्स रेंज से बाहर" कैसे पकड़ सकता हूं? jQuery.inArray (), इसका उपयोग कैसे करें? रैंकडाउन में YAML की वर्तमान तारीख IIS7 पर क्लासिक एएसपी: 500 आंतरिक सर्वर त्रुटि पर ब्राउज़र में त्रुटियों को भेजने से इनकार करते हुए कंसोल अनुप्रयोग के लिए "बाहर निकलें" मैं एक सटीक समय कैसे प्राप्त कर सकता हूं, उदाहरण के लिए उद्देश्य सी में मिलीसेकंड में?

पूर्णांक आवरण वर्ग और == ऑपरेटर – जहां व्यवहार निर्दिष्ट है?

Integer integer1 = 127; Integer integer2 = 127; System.out.println(integer1 == integer2);//true integer1 = 128; integer2 = 128; System.out.println(integer1 == integer2);//false 

मुझे पता चला कि यह == (यदि ऐसा है) -128 - 127 अंतर्गत देता है, तो ऐसा विनिर्देश क्यों है?

वेब के समाधान से एकत्रित समाधान "पूर्णांक आवरण वर्ग और == ऑपरेटर – जहां व्यवहार निर्दिष्ट है?"

Integer.valueOf(int) में इस कोड के कारण:

 public static Integer valueOf(int i) { if(i >= -128 && i <= IntegerCache.high) return IntegerCache.cache[i + 128]; else return new Integer(i); } 

स्पष्टीकरण:

Integer integer1 = 127 Integer integer1 = Integer.valueOf(127) लिए एक शॉर्टकट है, और -128 और 127 (समावेशी) के बीच के मानों के लिए, Integer integer1 = Integer.valueOf(127) कैश में रखा जाता है और कई बार लौटा जाता है, जबकि उच्च और निम्न संख्याएं नए इंटेजर्स उत्पन्न करती हैं हर बार।

== अगर वह सटीक समान ऑब्जेक्ट होता है तो सही लौटाएगा उस सीमा के भीतर जावा 'इंटर्न' संख्याओं में बॉक्सिंग इंटिजर्स, इसलिए ऐसे नंबर का कोई भी बॉक्स्ड संस्करण सटीक एक ही ऑब्जेक्ट में परिणाम देगा।

तुलना में इस प्रभाव से बचने के लिए, उपयोग करें। (बराबर)

 System.out.println(integer1.equals(integer2));