ऑपरेटर पूर्वता उस क्रम को निर्धारित करता है जिसमें एक अभिव्यक्ति में ऑपरेटरों का मूल्यांकन किया जाता है।
इससे पहले कि आप इस लेख को पढ़ना शुरू करें, आपको जावा ऑपरेटर्स का बुनियादी ज्ञान होना चाहिए।
अब, नीचे दिए गए कथन पर एक नज़र डालें:
int myInt = 12 - 4 * 2;
MyInt का मान क्या होगा? यह होगा (12 - 4)*2
, वह है 16
? या यह होगा 12 - (4 * 2)
, वह है 4
?
जब दो ऑपरेटर एक सामान्य ऑपरेंड साझा करते हैं, तो 4
इस मामले में, सबसे अधिक पूर्वता वाला ऑपरेटर पहले संचालित होता है।
जावा में, की पूर्ववर्ती *
स्थिति इससे अधिक है -
। इसलिए, गुणन घटाव से पहले किया जाता है, और myInt का मूल्य 4 होगा।
संचालक वरीयता तालिका
नीचे दी गई तालिका जावा में ऑपरेटरों की पूर्वता को सूचीबद्ध करती है; उच्चतर यह तालिका में प्रकट होता है, उच्च इसकी पूर्वता।
जावा संचालक प्राथमिकतासंचालक | पूर्वता |
---|---|
उपसर्ग वृद्धि और क्षय | ++ -- |
उपसर्ग वृद्धि और क्षय, और एकात्मक | ++ -- + - ~ ! |
गुणक | * / % |
योजक | + - |
खिसक जाना | << >> >>> |
संबंधपरक | < > <= >= instanceof |
समानता | == != |
बिटवाइंड एंड | & |
बिटवाइज़ एक्सक्लूसिव OR | ^ |
बिटवाइस समावेशी या | | |
तार्किक और | && |
तार्किक या | || |
टर्नरी | ? : |
असाइनमेंट | = += -= *= /= %= &= ^= |= <<= >>= >>>= |
उदाहरण: ऑपरेटर की प्राथमिकता
class Precedence ( public static void main(String() args) ( int a = 10, b = 5, c = 1, result; result = a-++c-++b; System.out.println(result); ) )
आउटपुट :
२
उपसर्ग के ऑपरेटर की वरीयता घटाव ऑपरेटर ++
की तुलना में अधिक है -
। इसलिये,
परिणाम = a - ++ c - ++ b;
के बराबर है
परिणाम = a - (++ c) - (++ b);
एक ही अभिव्यक्ति में कई ऑपरेटरों और ऑपरेंड्स के साथ काम करते समय, आप स्पष्टता के लिए उपरोक्त उदाहरण में कोष्ठक का उपयोग कर सकते हैं। कोष्ठकों के अंदर की अभिव्यक्ति का मूल्यांकन सबसे पहले किया जाता है।
जावा में ऑपरेटर्स की सहयोगीता
यदि किसी अभिव्यक्ति के समान पूर्वता के साथ दो संचालक हैं, तो अभिव्यक्ति का मूल्यांकन इसकी सहानुभूति (या तो बाएं से दाएं, या बाएं से दाएं) के अनुसार किया जाता है। एक उदाहरण लेते हैं।
a = b = c;
यहाँ, c का मान चर b को सौंपा गया है। फिर b का मान वेरिएबल a का असाइन किया गया है। क्यों? यह इसलिए है क्योंकि = ऑपरेटर की सहानुभूति दाईं से बाईं ओर है।
नीचे दी गई तालिका में जावा ऑपरेटर्स की सहक्रियाशीलता के साथ-साथ उनकी समरूपता को दिखाया गया है।
जावा संचालक प्राथमिकता और संबद्धतासंचालक | पूर्वता | संबद्धता |
---|---|---|
उपसर्ग वृद्धि और क्षय | ++ -- | बाएं से दाएं |
उपसर्ग वृद्धि और क्षय, और एकात्मक | ++ -- + - ~ ! | दाएं से बाएं |
गुणक | * / % | बाएं से दाएं |
योजक | + - | बाएं से दाएं |
खिसक जाना | << >> >>> | बाएं से दाएं |
संबंधपरक | < > <= >= instanceof | बाएं से दाएं |
समानता | == != | बाएं से दाएं |
बिटवाइंड एंड | & | बाएं से दाएं |
बिटवाइज़ एक्सक्लूसिव OR | ^ | बाएं से दाएं |
बिटवाइस समावेशी या | | | बाएं से दाएं |
तार्किक और | && | बाएं से दाएं |
तार्किक या | || | बाएं से दाएं |
टर्नरी | ? : | दाएं से बाएं |
असाइनमेंट | = += -= *= /= %= &= ^= |= <<= >>= >>>= | दाएं से बाएं |
आपको यहां सब कुछ याद रखने की आवश्यकता नहीं है। ज्यादातर समय, ऑपरेटरों की पूर्वता और सहूलियत अपने आप में समझ में आती है। आप हमेशा संदेह के लिए संदर्भ के लिए इस लेख पर वापस आ सकते हैं। इसके अलावा, आप कोष्ठक का उपयोग कर सकते हैं यदि आपको लगता है कि यह आपके कोड को समझने में आसान बनाता है।