जावा में तार्किक और संबंधपरक ऑपरेटरों के लिए एक शुरुआती मार्गदर्शिका

जावा में तार्किक और संबंधपरक ऑपरेटरों के लिए एक शुरुआती मार्गदर्शिका

ऑपरेटर वे प्रतीक हैं जिनका उपयोग मूल्यों, चरों या कथनों पर संचालन करने के लिए किया जाता है। जिन भावों पर वे ये क्रियाएं करते हैं, उन्हें ऑपरेंड कहा जाता है। संचालन संबंधपरक, समानता और तार्किक ऑपरेटरों के लिए एक बूलियन परिणाम (सही या गलत) लौटाता है।





एक ऑपरेटर द्वारा किए जाने वाले ऑपरेंड की संख्या उसके प्रकार को निर्धारित करती है। एक ऑपरेटर जो एक ऑपरेंड लेता है उसे 'यूनरी' कहा जाता है। एक ऑपरेटर जो दो ऑपरेंड लेता है उसे 'बाइनरी' कहा जाता है।





यह जानने के लिए पढ़ें कि आप जावा में लॉजिकल और रिलेशनल ऑपरेटरों का उपयोग कैसे कर सकते हैं। बेहतर अभी तक, अधिकांश प्रोग्रामिंग भाषाएं समान ऑपरेटरों का उपयोग करती हैं ताकि आप इस ज्ञान को कहीं और लागू कर सकें।





लॉजिकल ऑपरेटर्स

प्रोग्रामिंग करते समय उनका उपयोग तार्किक कथन बनाने के लिए किया जाता है। जावा में छह लॉजिकल ऑपरेटर हैं। नीचे दी गई तालिका उन्हें सारांशित करती है।

ऑपरेटरनामप्रकार
|बूलियन तार्किक ORबायनरी
औरबूलियन तार्किक औरबायनरी
^बूलियन लॉजिकल एक्सक्लूसिव ORबायनरी
||सशर्त ORबायनरी
&&सशर्त औरबायनरी
!तार्किक नोटएकल

यदि आप जांचना चाहते हैं कि क्या एक या दोनों शर्तें सत्य हैं, तो इस ऑपरेटर का उपयोग करें। एक शर्त एक अभिव्यक्ति है जो या तो सत्य या गलत हो सकती है।



बूलियन तार्किक समावेशी या (|)

तार्किक या जांचता है कि अभिव्यक्ति का मूल्यांकन करने से पहले दोनों ऑपरेंड सत्य हैं या नहीं।

if ( dob <2005 | height <= 5){
money++;
}

उपरोक्त उदाहरण किसी को अधिक पैसा देगा यदि उनकी जन्म तिथि (डॉब) 2005 से कम है या यदि उनकी ऊंचाई 5 फीट से कम या उसके बराबर है।





बूलियन तार्किक और (&)

इस ऑपरेटर का उपयोग यह जांचने के लिए किया जाता है कि कार्यक्रम में एक निश्चित निष्पादन पथ लेने से पहले दोनों शर्तें सही हैं या नहीं। यह पूरी अभिव्यक्ति का मूल्यांकन करने से पहले जांचता है कि दोनों स्थितियां सत्य हैं या नहीं।

संबंधित: पायथन में बूलियन विधियों का उपयोग करके स्ट्रिंग्स को कैसे मान्य करें?





बूलियन लॉजिकल एक्सक्लूसिव या (^)

यदि आप जांचना चाहते हैं कि क्या शर्तों में से एक सत्य है, लेकिन दोनों नहीं, तो यह उपयोग करने वाला ऑपरेटर है। नीचे दी गई सत्य तालिका उन परिणामों को सारांशित करती है जो आप इसका उपयोग करते समय देखेंगे।

अभिव्यक्ति1अभिव्यक्ति २एक्सप्रेशन1 ^ एक्सप्रेशन2
झूठाझूठाझूठा
झूठासचसच
सचझूठासच
सचसचझूठा

बूलियन सशर्त और (&&)

यह ऑपरेटर तार्किक AND के समान है। अंतर यह है कि यह पहले जांचता है कि बाईं ओर की स्थिति सही है या नहीं, आगे बढ़ने से पहले दाईं ओर की स्थिति की जांच करें।

यदि बायां भाग झूठा पाया जाता है, तो निष्पादन तुरंत रुक जाता है। नहीं तो दाहिने हिस्से का मूल्यांकन जारी रहेगा। इस सुविधा को शॉर्ट-सर्किट मूल्यांकन के रूप में जाना जाता है।

इस ऑपरेटर के बारे में अपनी समझ को आधार बनाने के लिए नीचे दी गई सत्य तालिका देखें।

अभिव्यक्ति1अभिव्यक्ति २एक्सप्रेशन1 && एक्सप्रेशन2
झूठाझूठाझूठा
झूठासचझूठा
सचझूठाझूठा
सचसचसच

सशर्त या (||)

यदि दोनों में से कोई भी शर्त गलत है, तो निष्पादन कार्यक्रम के अगले भाग पर चला जाएगा। दूसरे शब्दों में, दोनों शर्तें सत्य होनी चाहिए।

यह ऑपरेटर लॉजिकल OR के समान है। यह भी जांचता है कि कुछ कोड निष्पादित करने से पहले या तो एक या दोनों स्थितियां सत्य हैं या नहीं।

सशर्त और के समान, तार्किक OR भी शॉर्ट सर्किट मूल्यांकन का उपयोग करता है। यह पहले जांचता है कि दाईं ओर के ऑपरेंड का मूल्यांकन करने से पहले बाईं ओर का ऑपरेंड सही है या नहीं।

सम्बंधित: जावा में एक कंस्ट्रक्टर क्या है और आप इसका उपयोग कैसे करते हैं?

दूसरी हार्डड्राइव कैसे स्थापित करें

यदि बाईं ओर की स्थिति सही पाई जाती है, तो दाईं ओर की स्थिति की जाँच करने की कोई आवश्यकता नहीं है। अन्यथा, दाईं ओर मूल्यांकन जारी रहेगा।

तार्किक नहीं (!)

इस ऑपरेटर का उपयोग किसी शर्त को नकारने के लिए किया जाता है। यह बस उस अर्थ को उलट देता है जिस पर वह काम कर रहा है।

if(!(x>5)){
// statements
}

उपरोक्त कथन का अर्थ है कि यदि 'x 5 से बड़ा है' सत्य नहीं है, तो कथनों को के अंदर निष्पादित करें अगर .

अभिव्यक्ति (x>5) के साथ गोल कोष्ठक के उपयोग पर ध्यान दें। यदि आप अपना प्रोग्राम लिखते समय इन कोष्ठकों को शामिल नहीं करते हैं, तो आपको एक संकलन-समय त्रुटि मिलेगी। कारण यह है कि ! एक यूनरी ऑपरेटर है जो एक शर्त पर कार्य करता है। कोष्ठक के बिना, संकलक इसे एक्स पर अभिनय करने वाले ऑपरेटर के रूप में व्याख्या करेगा, न कि x>5।

कोष्ठक का समावेश केवल संकलक को अभिव्यक्ति की सही व्याख्या करने में सक्षम बनाने के लिए नहीं है। उन्हें प्रोग्रामर के लिए अधिक जटिल अभिव्यक्तियों को बेहतर ढंग से समझने के लिए एक तरीके के रूप में भी इस्तेमाल किया जा सकता है। नीचे दिए गए उदाहरण को देखें:

age >= 7 && height <5

कुछ लोगों को तर्क के साथ पालन करना मुश्किल हो सकता है। इसलिए, कुछ प्रोग्रामर पठनीयता कारणों से अनावश्यक कोष्ठक जोड़ना पसंद करते हैं:

(age >= 7) && (height <5)

संबंधपरक संकारक

इन ऑपरेटरों का उपयोग ऑपरेंड के बीच सरल संबंधों की तुलना करने के लिए किया जाता है।

ऑपरेटरनाम
>से अधिक
<से कम
> =इससे बड़ा या इसके बराबर
<=से कम या बराबर

रिलेशनल ऑपरेटरों को समझना आसान है क्योंकि उन सभी का एक ही अर्थ है जो सामान्य बीजगणितीय ऑपरेटरों से आप पहले से परिचित हैं। यानी, > तथा < वही अर्थ है जो आप पहले से जानते हैं जैसा कि ऊपर दी गई तालिका में दिया गया है।

if( x <= 7 ){
x++;
}

उपरोक्त अगर कथन जाँचता है कि x, 7 से छोटा है या उसके बराबर है। यदि सत्य है, तो कोष्ठक के अंदर दिए गए कथन निष्पादित होते हैं, अन्यथा वे नहीं करते हैं।

अब समानता ऑपरेटरों का उल्लेख करने का एक अच्छा समय होगा। उनमें से केवल दो हैं (बराबर, == और !=, बराबर नहीं)। जैसा कि उनके नाम से पता चलता है, उनका उपयोग दो ऑपरेंड के बीच समानता का परीक्षण करने के लिए किया जाता है।

सम्बंधित: Java में Arrays पर ऑपरेशंस कैसे बनाएं और निष्पादित करें

समानता ऑपरेटर (==) को असाइनमेंट ऑपरेटर (=) के साथ भ्रमित नहीं होना चाहिए। शुरुआती प्रोग्रामर दोनों को मिलाने के शौकीन हैं। यह उचित है क्योंकि बीजगणित में प्रतीक (=) का प्रयोग समानता व्यक्त करने के लिए किया जाता है। हालाँकि, प्रोग्रामिंग में यह सही नहीं है।

असाइनमेंट ऑपरेटर (=) एक वैरिएबल के लिए एक मान असाइन करता है जबकि समानता ऑपरेटर (==) समानता के लिए परीक्षण करता है। अंतर को समझने के लिए नीचे दिया गया उदाहरण देखें:

if(x=5){
// statements
}

उपरोक्त कोड हमेशा निष्पादित होगा चाहे x वास्तव में 5 के बराबर हो। इस बीच, नीचे दिया गया कोड केवल तभी निष्पादित होगा जब x 5 के बराबर हो। इसलिए, यह महत्वपूर्ण है कि दोनों को न मिलाएं।

if(x==5){
// statements
}

उल्लिखित दो समानता ऑपरेटरों की पूर्वता का स्तर समान है, हालांकि संबंधपरक ऑपरेटरों की तुलना में कम है।

संबंधपरक ऑपरेटरों की भी समान स्तर की प्राथमिकता होती है। इन ऑपरेटरों का निष्पादन बाएं से दाएं शुरू होता है।

जावा ऑपरेटरों के आगे के विचार

आपने देखा होगा कि कुछ उदाहरणों में कुछ ऑपरेटरों और उनके ऑपरेंड के बीच रिक्त स्थान होता है जबकि अन्य में ऐसा नहीं होता है।

उस स्थान की अनुपस्थिति/उपस्थिति आपको चिंतित नहीं करनी चाहिए। संकलक इसे अनदेखा कर देगा। इसलिए, निम्नलिखित अभिव्यक्तियों का एक ही अर्थ है:

Y>=7 // no whitespace
Y >= 7 // with whitespace

रिलेशनल ऑपरेटरों का उपयोग आमतौर पर साधारण स्थितियों को व्यक्त करने के लिए किया जाता है। सरल स्थितियों को अधिक जटिल स्थितियों में संयोजित करने के लिए, आपको तार्किक ऑपरेटरों का उपयोग करना होगा। लॉजिकल ऑपरेटर्स कई स्थितियों का परीक्षण कर सकते हैं, रिलेशनल ऑपरेटरों के विपरीत जो सिर्फ एक शर्त का परीक्षण करते हैं।

यह भी ध्यान रखना महत्वपूर्ण है कि लॉजिकल ऑपरेटर (|, &, ^) बिटवाइज ऑपरेटर हो सकते हैं, जब उनके पास इंटीग्रल ऑपरेंड हो। जब बिटवाइज़ ऑपरेटरों के रूप में उपयोग किया जाता है, तो वे अपने ऑपरेंड के बिट्स पर काम करेंगे।

ऑपरेटरों के इस ज्ञान के साथ, अब आपको जावा कक्षाएं सीखने के लिए कमर कस लेनी चाहिए।

साझा करना साझा करना कलरव ईमेल जावा में कक्षाएं बनाना सीखें

यदि आप जावा में प्रोग्राम करना सीख रहे हैं, तो आपको यह जानना होगा कि कक्षाएं कैसे बनाई जाती हैं।

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • जावा
  • कोडिंग ट्यूटोरियल
लेखक के बारे में जेरोम डेविडसन(22 लेख प्रकाशित)

जेरोम MakeUseOf में स्टाफ राइटर हैं। वह प्रोग्रामिंग और लिनक्स पर लेख शामिल करता है। वह एक क्रिप्टो उत्साही भी है और हमेशा क्रिप्टो उद्योग पर नजर रखता है।

जेरोम डेविडसन की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें