कोटलिन फ़ंक्शन (उदाहरण के साथ)

विषय - सूची

इस लेख में, आप कार्यों के बारे में जानेंगे; फ़ंक्शन क्या हैं, इसका सिंटैक्स और कोटलिन में उपयोगकर्ता-फ़ंक्शन कैसे बनाएं।

प्रोग्रामिंग में, फ़ंक्शन संबंधित बयानों का एक समूह है जो एक विशिष्ट कार्य करता है।

बड़े प्रोग्राम को छोटे और मॉड्यूलर चंक्स में तोड़ने के लिए फंक्शन्स का उपयोग किया जाता है। उदाहरण के लिए, आपको उपयोगकर्ता से इनपुट के आधार पर एक सर्कल बनाने और रंग करने की आवश्यकता है। इस समस्या को हल करने के लिए आप दो कार्य कर सकते हैं:

  • createCircle() समारोह
  • colorCircle() समारोह

एक जटिल कार्यक्रम को छोटे घटकों में विभाजित करना हमारे कार्यक्रम को अधिक संगठित और प्रबंधनीय बनाता है।

इसके अलावा, यह पुनरावृत्ति से बचा जाता है और कोड को पुन: प्रयोज्य बनाता है।

प्रकार के कार्य

एक फ़ंक्शन उपयोगकर्ता द्वारा परिभाषित किया गया है या मानक पुस्तकालय में उपलब्ध है, इसके आधार पर, दो प्रकार के कार्य हैं:

  • कोटलिन स्टैंडर्ड लाइब्रेरी फंक्शन
  • उपयोगकर्ता-परिभाषित कार्य

कोटलिन स्टैंडर्ड लाइब्रेरी फंक्शन

मानक लाइब्रेरी फ़ंक्शंस कोटलिन में निर्मित कार्य हैं जो उपयोग के लिए आसानी से उपलब्ध हैं। उदाहरण के लिए,

  • print() एक पुस्तकालय फ़ंक्शन है जो मानक आउटपुट स्ट्रीम (मॉनिटर) को संदेश प्रिंट करता है।
  • sqrt()किसी संख्या का वर्गमूल देता है ( Doubleमान)
 fun main(args: Array) ( var number = 5.5 print("Result = $(Math.sqrt(number))") )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 परिणाम = 2.345207879911715

यहां आपको पता लगाने के लिए कोटलिन स्टैंडर्ड लाइब्रेरी का लिंक दिया गया है।

उपयोगकर्ता-परिभाषित कार्य

जैसा कि उल्लेख किया गया है, आप स्वयं कार्य बना सकते हैं। ऐसे कार्यों को उपयोगकर्ता-परिभाषित फ़ंक्शन कहा जाता है।

कोटलिन में उपयोगकर्ता-परिभाषित फ़ंक्शन कैसे बनाएं?

इससे पहले कि आप किसी फ़ंक्शन का उपयोग (कॉल) कर सकें, आपको इसे परिभाषित करने की आवश्यकता है।

यहां बताया गया है कि आप कोटलिन में एक समारोह को कैसे परिभाषित कर सकते हैं:

 मज़ा callMe () (// फ़ंक्शन बॉडी) 

कोटलिन में एक फ़ंक्शन को परिभाषित करने के लिए, funकीवर्ड का उपयोग किया जाता है। फिर फ़ंक्शन (पहचानकर्ता) का नाम आता है। यहां, फ़ंक्शन का नाम कॉलमे है।

उपरोक्त कार्यक्रम में, कोष्ठक ( )खाली है। इसका मतलब है, यह फ़ंक्शन किसी भी तर्क को स्वीकार नहीं करता है। आप इस लेख में बाद में तर्कों के बारे में जानेंगे।

घुंघराले ब्रेसिज़ के अंदर कोड ( )फ़ंक्शन का शरीर है।

किसी फ़ंक्शन को कैसे कॉल करें?

आपको फ़ंक्शन के शरीर के अंदर कोड चलाने के लिए फ़ंक्शन को कॉल करना होगा। ऐसे:

 मुझे फोन करो()

यह कथन callMe()पहले घोषित फ़ंक्शन को कॉल करता है ।

उदाहरण: सरल कार्य कार्यक्रम

 fun callMe() ( println("Printing from callMe() function.") println("This is cool (still printing from inside).") ) fun main(args: Array) ( callMe() println("Printing outside from callMe() function.") )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

CallMe () फ़ंक्शन से मुद्रण। यह अच्छा है (अभी भी अंदर से छपाई कर रहा है)। CallMe () फ़ंक्शन से बाहर मुद्रण।

callMe()उपरोक्त कोड में समारोह किसी भी तर्क को स्वीकार नहीं करता।

साथ ही, फ़ंक्शन कोई मान नहीं लौटाता है (रिटर्न प्रकार है Unit)।

आइए एक और फ़ंक्शन उदाहरण लेते हैं। यह फ़ंक्शन तर्कों को स्वीकार करेगा और एक मान भी लौटाएगा।

उदाहरण: फ़ंक्शन का उपयोग करके दो नंबर जोड़ें

 fun addNumbers(n1: Double, n2: Double): Int ( val sum = n1 + n2 val sumInteger = sum.toInt() return sumInteger ) fun main(args: Array) ( val number1 = 12.2 val number2 = 3.4 val result: Int result = addNumbers(number1, number2) println("result = $result") )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 परिणाम = 15

तर्कों और रिटर्न वैल्यू के साथ कैसे कार्य करते हैं?

यहां, फ़ंक्शन कॉल के दौरान फ़ंक्शन के Doubleलिए दो तर्क नंबर 1 और नंबर 2 टाइप किए जाते हैं addNumbers()। इन तर्कों को वास्तविक तर्क कहा जाता है।

 परिणाम = addNumbers (संख्या 1, संख्या 2)

पैरामीटर n1 और n2 पारित तर्कों (फ़ंक्शन परिभाषा में) को स्वीकार करता है। इन तर्कों को औपचारिक तर्क (या पैरामीटर) कहा जाता है।

In Kotlin, arguments are separated using commas. Also, the type of the formal argument must be explicitly typed.

Note that, the data type of actual and formal arguments should match, i.e., the data type of first actual argument should match the type of first formal argument. Similarly, the type of second actual argument must match the type of second formal argument and so on.

Here,

 return sumInteger

is the return statement. This code terminates the addNumbers() function, and control of the program jumps to the main() function.

In the program, sumInteger is returned from addNumbers() function. This value is assigned to the variable result.

Notice,

  • both sumInteger and result are of type Int.
  • the return type of the function is specified in the function definition.
     // return type is Int fun addNumbers(n1: Double, n2: Double): Int (… )

If the function doesn't return any value, its return type is Unit. It is optional to specify the return type in the function definition if the return type is Unit.

Example: Display Name by Using Function

 fun main(args: Array) ( println(getName("John", "Doe")) ) fun getName(firstName: String, lastName: String): String = "$firstName $lastName"

When you run the program, the output will be:

 John Doe

Here, the getName() function takes two String arguments, and returns a String.

You can omit the curly braces ( ) of the function body and specify the body after = symbol if the function returns a single expression (like above example).

It is optional to explicitly declare the return type in such case because the return type can be inferred by the compiler. In the above example, you can replace

 मज़ेदार getName (पहला नाम: स्ट्रिंग, अंतिम नाम: स्ट्रिंग): स्ट्रिंग = "$ firstName $ नया नाम"

साथ से

 मज़ेदार getName (पहला नाम: स्ट्रिंग, अंतिम नाम: स्ट्रिंग) = "$ firstName $ lastName" 

यह कोटलिन के कार्यों का संक्षिप्त परिचय है। कार्यों से संबंधित अनुशंसित लेख:

  • कोटलिन इनलाइन फ़ंक्शन
  • कोटलिन इन्फिक्स फ़ंक्शन
  • कोटलिन फंक्शन स्कोप
  • कोटलिन डिफ़ॉल्ट और नामित तर्क
  • कोटलिन रिकर्सियन
  • कोटलिन टेल पुनरावर्ती कार्य
  • कोटलिन एक्सटेंशन फ़ंक्शन
  • कोटलिन हाई-ऑर्डर फ़ंक्शंस और लम्बदा

दिलचस्प लेख...