स्विफ्ट - ऑपरेटर्स

एक ऑपरेटर एक प्रतीक है जो संकलक को विशिष्ट गणितीय या तार्किक जोड़तोड़ करने के लिए कहता है। उद्देश्य-सी अंतर्निहित ऑपरेटरों में समृद्ध है और निम्नलिखित प्रकार के ऑपरेटर प्रदान करता है -

  • अंकगणितीय आपरेटर
  • तुलना संचालक
  • लॉजिकल ऑपरेटर्स
  • बिटवाइज ऑपरेटर्स
  • असाइनमेंट ऑपरेटर्स
  • रेंज ऑपरेटर्स
  • विविध संचालक

यह ट्यूटोरियल एक-एक करके अंकगणित, संबंधपरक, तार्किक, बिटवाइज़, असाइनमेंट और अन्य ऑपरेटरों को समझाएगा।

अंकगणितीय आपरेटर

निम्नलिखित तालिका स्विफ्ट 4 भाषा द्वारा समर्थित सभी अंकगणितीय ऑपरेटरों को दिखाती है। चर मान लेंA 10 और चर रखता है B 20 रखती है, तो -

ऑपरेटर विवरण उदाहरण
+ दो ऑपरेंड जोड़ता है A + B 30 देगा
- पहले से दूसरे ऑपरेंड को घटाता है A - B देगा -10
* दोनों ऑपरेंड को गुणा करता है A * B 200 देगा
/ भाजक द्वारा अंश को विभाजित करता है B / A 2 देगा
% मापांक ऑपरेटर और पूर्णांक / फ्लोट डिवीजन के बाद शेष ब% ए द 0 दे खेंगे

तुलना संचालक

निम्न तालिका स्विफ्ट 4 भाषा द्वारा समर्थित सभी संबंधित परिचालकों को दिखाती है। चर मान लेंA 10 और चर रखता है B 20 रखती है, तो -

ऑपरेटर विवरण उदाहरण
== जाँच करता है कि दो ऑपरेंड का मान बराबर है या नहीं; यदि हाँ, तो स्थिति सच हो जाती है। (ए == बी) सच नहीं है।
! = जाँच करता है कि दो ऑपरेंड का मान बराबर है या नहीं; यदि मूल्य समान नहीं हैं, तो स्थिति सच हो जाती है। (ए! = बी) सच है।
> जाँच करता है कि क्या बाएं ऑपरेंड का मूल्य सही ऑपरेंड के मूल्य से अधिक है; यदि हाँ, तो स्थिति सच हो जाती है। (ए> बी) सच नहीं है।
< जाँच करता है कि क्या बाएं ऑपरेंड का मूल्य सही ऑपरेंड के मूल्य से कम है; यदि हाँ, तो स्थिति सच हो जाती है। (ए <बी) सच है।
> = जाँच करता है कि क्या बाएं ऑपरेंड का मूल्य सही ऑपरेंड के मूल्य से अधिक या उसके बराबर है; यदि हाँ, तो स्थिति सच हो जाती है। (ए> = बी) सच नहीं है।
<= यह जाँचता है कि क्या बाएं ऑपरेंड का मूल्य सही ऑपरेंड के मूल्य से कम या उसके बराबर है; यदि हाँ, तो स्थिति सच हो जाती है। (ए <= बी) सच है।

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

निम्न तालिका स्विफ्ट 4 भाषा द्वारा समर्थित सभी तार्किक ऑपरेटरों को दिखाती है। चर मान लेंA 1 और चर रखता है B 0 रखती है, तो -

ऑपरेटर विवरण उदाहरण
&& जिसे लॉजिकल एंड ऑपरेटर कहा जाता है। यदि दोनों ऑपरेशंस गैर-शून्य हैं, तो स्थिति सच हो जाती है। (A && B) गलत है।
|| जिसे लॉजिकल या ऑपरेटर कहा जाता है। यदि दोनों ऑपरेंड में से कोई भी गैर-शून्य है, तो स्थिति सच हो जाती है। (ए || बी) सच है
! जिसे लॉजिकल नॉट ऑपरेटर कहा जाता है। उपयोग अपने ऑपरेंड की तार्किक स्थिति को उलट देता है। यदि कोई शर्त सत्य है, तो लॉजिकल नॉट ऑपरेटर इसे गलत बना देगा। ! (A && B) सत्य है।

बिटवाइज ऑपरेटर्स

बिटवाइज़ ऑपरेटर बिट पर काम करते हैं और बिट ऑपरेशन द्वारा बिट करते हैं। सत्य सारणी &।, और ^ के लिए निम्नानुसार हैं -

पी क्यू पी क्यू पी | क्ष पी ^ क्ष
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1
Assume A = 60; and B = 13;

In binary format, they will be as follows:

A = 0011 1100

B = 0000 1101

-----------------

A & B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A = 1100 0011

स्विफ्ट 4 भाषा द्वारा समर्थित बिटवाइज़ ऑपरेटरों को निम्न तालिका में सूचीबद्ध किया गया है। चर मान लेंA 60 और चर रखता है B 13 रखती है, तो 7 13

ऑपरेटर विवरण उदाहरण
और बाइनरी और ऑपरेटर परिणाम को थोड़ा कॉपी करता है, अगर यह दोनों ऑपरेंड में मौजूद है। (A & B) 12 देगा, जो 0000 1100 है
| बाइनरी या ऑपरेटर थोड़ा सा कॉपी करता है, अगर यह किसी भी ऑपरेंड में मौजूद है। (ए | बी) 61 देगा, जो 0011 1101 है
^ बाइनरी एक्सओआर ऑपरेटर बिट को कॉपी करता है, अगर यह एक ऑपरेंड में सेट होता है, लेकिन दोनों नहीं। (ए ^ बी) 49 देगा, जो 0011 0001 है
~ बाइनरी ओन्स कंप्लीट ऑपरेटर, एकात्मक है और इसमें 'फ्लिपिंग' बिट्स का प्रभाव है। (~ ए) -61 देगा, जो 2 के पूरक रूप में ११०० ००११ है।
<< बाइनरी लेफ्ट शिफ्ट ऑपरेटर। बाएं ऑपरेंड वैल्यू को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से छोड़ दिया जाता है। (ए << 2 240 देगा, जो कि 1111 0000 है
>> बाइनरी राइट शिफ्ट ऑपरेटर। बाएं ऑपरेंड वैल्यू को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से दाएं स्थानांतरित किया जाता है। A >> 2 15 देगा, जो 0000 1111 है

असाइनमेंट ऑपरेटर्स

SSwift 4 निम्नलिखित असाइनमेंट ऑपरेटरों का समर्थन करता है -

ऑपरेटर विवरण उदाहरण
= सरल असाइनमेंट ऑपरेटर, राइट साइड ऑपरेंड्स से लेफ्ट साइड ऑपरेंड तक वैल्यू असाइन करता है C = A + B C में A + B का मान प्रदान करेगा
+ = जोड़ें और असाइनमेंट ऑपरेटर, यह बाएं ऑपरेटर के लिए सही ऑपरेंड जोड़ता है और बाएं ऑपरेंड को परिणाम प्रदान करता है C + = A C = C + A के बराबर है
- = घटाव और असाइनमेंट ऑपरेटर, यह बाएं ऑपरेंड से दाएं ऑपरेंड को घटाता है और बाएं ऑपरेंड को परिणाम प्रदान करता है C - = A C = C - A के बराबर है
* = गुणा और असाइनमेंट ऑपरेटर, यह बाएं ऑपरेटर के साथ दाएं ऑपरेंड को गुणा करता है और बाएं ऑपरेंड को परिणाम प्रदान करता है C * = A C = C * A के बराबर है
/ = डिवाइड और असाइनमेंट ऑपरेटर, यह बाएं ऑपरेंड को सही ऑपरेंड के साथ विभाजित करता है और परिणाम को बाएं ऑपरेंड को असाइन करता है C / = A C = C / A के बराबर है
% = मापांक और असाइनमेंट ऑपरेटर, यह दो ऑपरेंड का उपयोग करके मापांक लेता है और परिणाम को बाएं ऑपरेंड में असाइन करता है C% = A C = C% A के बराबर है
<< = लेफ्ट शिफ्ट और असाइनमेंट ऑपरेटर C << = 2 C = C << 2 के समान है
>> = राइट शिफ्ट और असाइनमेंट ऑपरेटर C >> = 2 C = C >> 2 के समान है
और = बिटवाइज और असाइनमेंट ऑपरेटर C & = 2 C = C & 2 के समान है
^ = बिटवाइज एक्सक्लूसिव OR एंड असाइनमेंट ऑपरेटर C ^ = 2 C = C ^ 2 के समान है
| = बिटवाइस समावेशी या असाइनमेंट ऑपरेटर C | = 2 C = C के समान है 2

रेंज ऑपरेटर्स

स्विफ्ट 4 में दो रेंज ऑपरेटर शामिल हैं, जो मानों की एक सीमा को व्यक्त करने के लिए शॉर्टकट हैं। निम्न तालिका इन दो ऑपरेटरों को समझाती है।

ऑपरेटर विवरण उदाहरण
बंद रेंज (a ... b) एक सीमा को परिभाषित करता है जो a से b तक चलता है, और इसमें a और b का मान शामिल होता है। 1 ... 5 1, 2, 3, 4 और 5 देता है
हाफ-ओपन रेंज (a .. <b) एक सीमा को परिभाषित करता है जो a से b तक चलती है, लेकिन इसमें b शामिल नहीं है। 1 .. <5 1, 2, 3, और 4 देता है
एक तरफा सीमा

a ... तत्वों के अंत से लेकर चलने वाली सीमा को परिभाषित करता है

... ए, शुरू से लेकर एक सीमा को परिभाषित करता है

1… तत्वों का 1, 2,3… अंत देता है

... 2 शुरुआत देता है ... 1,2 को

विविध संचालक

स्विफ्ट 4 सहित कुछ अन्य महत्वपूर्ण ऑपरेटरों का समर्थन करता है rangeतथा ? : जो निम्नलिखित तालिका में बताए गए हैं।

ऑपरेटर विवरण उदाहरण
यूनरी माइनस एक संख्यात्मक मूल्य का संकेत एक उपसर्ग का उपयोग करके टॉगल किया जा सकता है - -3 या -4
यूनरी प्लस वह मान लौटाता है जो बिना किसी परिवर्तन के संचालित होता है। +6 6 देता है
टर्नरी कंडिशनल स्थिति ? एक्स: वाई अगर हालत सच है? तब X मान: अन्यथा Y मान

संचालक पूर्ववर्ती

ऑपरेटर पूर्वता एक अभिव्यक्ति में शब्दों के समूहीकरण को निर्धारित करता है। यह प्रभावित करता है कि एक अभिव्यक्ति का मूल्यांकन कैसे किया जाता है। कुछ ऑपरेटरों में अन्य लोगों की तुलना में अधिक पूर्वता है; उदाहरण के लिए, गुणा ऑपरेटर में अतिरिक्त ऑपरेटर की तुलना में अधिक पूर्वता है।

उदाहरण के लिए, x = 7 + 3 * 2; यहाँ, x को 13 नहीं, 20 को सौंपा गया है क्योंकि ऑपरेटर * में + से अधिक पूर्वता है, इसलिए यह पहले 3 * 2 के साथ गुणा हो जाता है और फिर 7 में जुड़ जाता है।

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

ऑपरेटर विवरण उदाहरण
प्राथमिक अभिव्यक्ति संचालक () []। expr ++ expr-- बाएं से दाएं
गैर संचालक

* & + -! ~ ++ expr --expr

* *%

+ -

>> <<

<> <=> =

==! =

दाएं से बाएं
बाइनरी ऑपरेटर्स

और

^

|

&&

||

बाएं से दाएं
टर्नरी ऑपरेटर ?: दाएं से बाएं
असाइनमेंट ऑपरेटर्स = + = - = * = / =% = >> = << = & = ^ = = | = | दाएं से बाएं
अल्पविराम , बाएं से दाएं