कोडजिम युनिव्हर्सिटी कोर्सचा एक भाग म्हणून मार्गदर्शकासह व्याख्यान स्निपेट. पूर्ण अभ्यासक्रमासाठी साइन अप करा.


"तू पुन्हा, अमिगो. बरं, हॅलो."

"असे दिसते की, डिएगो, मला पाहून तुला फार आनंद झाला नाही?"

"मला असा समज झाला आहे की तुम्हाला असे वाटते की जावामधील पद्धतींबद्दल जाणून घेण्यासारखे सर्वकाही तुम्ही आधीच शिकले आहे."

"अरे, मी नाही..."

"मला नाही वाटत! तुला त्यातला अर्धा भागही माहीत नाही."

"नक्की, मी असहमत नाही...

"ठीक आहे, पुरेशी चर्चा. आता सुरुवात करण्याची वेळ आली आहे. आणि आम्ही काहीतरी सोप्या गोष्टीपासून सुरुवात करू. उदाहरणार्थ, जावामध्ये रिटर्न स्टेटमेंट आहे हे तथ्य. ते तुम्हाला ज्या पद्धतीमध्ये कॉल केले जाते ते त्वरित संपुष्टात आणण्याची परवानगी देते. हे विधान आहे:

return;

return"हे सोपे आहे: अर्धविरामानंतर एकांती शब्द . प्रोग्रामने हे विधान कार्यान्वित केल्यावर, वर्तमान पद्धत बाहेर पडते आणि कॉलिंग पद्धत चालू राहते.

" returnपद्धतीमध्ये कॉल केल्यास main, mainपद्धत ताबडतोब संपेल आणि त्यासह संपूर्ण प्रोग्राम.

उदाहरण:

class Solution
{
   public static void fill(int[] data, int from, int to, int value)
   {
     if (from < 0 || to > data.length)
       return;

     for (int i = from; i < to; i++)
     {
       data[i] = value;
     }
   }

   public static void main(String[] args)
   {
     int[] months = {1, 2, 3, 4, 5, 6, 7, 8 ,9, 10, 11, 12};
     fill(months, 2, 10, 8);
   }
}
पद्धत fill पास केलेल्या अॅरेचा काही भाग सह भरते value.

अ‍ॅरेचा जो भाग भरायचा आहे तो निर्देशांकांद्वारे परिभाषित केला जातो from आणि to.  पेक्षा कमी

असल्यास किंवा जर   अॅरेच्या लांबीपेक्षा जास्त असेल, तर पद्धत त्वरित बंद होते.from0to

"वरील प्रोग्राममध्ये एक fillपद्धत आहे जी त्यास पास केलेला अॅरे भरते value. तो संपूर्ण अॅरे भरत नाही, फक्त निर्देशांकांद्वारे निर्दिष्ट केलेला भाग fromआणि to.

"पद्धतीच्या सुरुवातीला fill, पास केलेली मूल्ये वैध असल्याची खात्री करण्यासाठी तपासली जाते. जर from0 पेक्षा कमी असेल, किंवा toअॅरेच्या लांबीपेक्षा जास्त असेल, तर fillपद्धत ताबडतोब संपुष्टात येते ( returnविधान कार्यान्वित करते)."

"समजले. हे सर्व विधान आहे का?"

"वास्तविक, returnविधान तुम्हाला वाटते त्यापेक्षा अधिक उपयुक्त आहे. ते इतके उपयुक्त आहे की ते जावामधील जवळजवळ प्रत्येक पद्धतीमध्ये आढळते. आणि आता मी तुम्हाला असे का आहे हे समजून घेईन.

परिणामासह पद्धती,void

"तुम्हाला कदाचित आठवत असेल की विधाने आहेत आणि अभिव्यक्ती आहेत . त्यांच्यात काय फरक आहे?"

"जर माझी चूक नसेल, तर एखाद्या विधानाप्रमाणे अभिव्यक्तीचा अर्थ कुठेतरी वापरला जाऊ शकतो."

"बरोबर. आणि, जावामध्ये, पद्धतींना देखील मूल्य असू शकते. आणि ही खूप चांगली बातमी आहे: पद्धती केवळ इनपुट पॅरामीटर्सवर आधारित काहीतरी करू शकत नाहीत, परंतु, उदाहरणार्थ, एखाद्या गोष्टीचे मूल्यांकन करण्यासाठी आणि परिणाम परत करण्यासाठी गणना _

"तसे, आपण आधीच अशा पद्धतींचा सामना केला आहे:

double delta = Math.abs(d1 - d2);
पद्धत abs()दुहेरी परत करते
Scanner console = new Scanner(System.in);
int x = console.nextInt();

पद्धत nextInt()एक परत करतेint
String str = "Hello";
String s2 = str.toUpperCase();
पद्धत toUpperCase()परत मिळते aString
int[] data = {1, 4, 5, 6, 7, 8, 11};
int[] array = Arrays.copyOf(data, 4);

पद्धत copyOf()एक परत करतेint[]

"प्रत्येक पद्धत केवळ एका पूर्वनिर्धारित प्रकाराचे एक मूल्य परत करू शकते . जेव्हा पद्धत घोषित केली जाते तेव्हा परतीचा प्रकार निर्धारित केला जातो:

public static Type name(parameters)
{
  method body
}

nameपद्धतीचे नाव कोठे आहे, parametersपद्धत पॅरामीटर्सची सूची आहे आणि typeपद्धत कोणत्या प्रकारचा परिणाम देते.

काहीही न देणार्‍या पद्धतींसाठी, एक विशेष प्लेसहोल्डर प्रकार आहे: void.

"दुसर्‍या शब्दांत, जर मी माझी पद्धत लिहिली आणि मला काहीही परत करायचे नसेल, तर मी त्या पद्धतीचा प्रकार घोषित करतो void, आणि तेच आहे?"

"हो. आणि, मला हे देखील म्हणायला हवे की जावामध्ये अशा अनेक पद्धती आहेत.

परिणाम परत करत आहे

"गणना/कामाचा निकाल देणारी पद्धत कशी घोषित करायची ते मी शोधून काढले. मी पद्धतीतूनच निकाल कसा परत करू?"

"हा एक वैध प्रश्न आहे. returnविधान आम्हाला पुन्हा एकदा मदत करते. एका पद्धतीतून निकाल उत्तीर्ण करणे असे दिसते:

return value;

" returnविधानाने पद्धत ताबडतोब संपुष्टात आणली जाईल. आणि valueजेव्हा ती बाहेर पडते तेव्हा ती पद्धत कॉलिंग पद्धतीकडे परत यायला हवी. पद्धतीच्या घोषणेमध्ये नमूद केलेल्या प्रकाराशी valueजुळणे आवश्यक आहे Type. तुम्ही जे शिकलात ते अधिक मजबूत करण्यासाठी येथे काही उदाहरणे आहेत:

उदाहरण 1. पद्धत किमान दोन संख्यांची गणना करते:

int min(int a, int b)
{
   if (a < b)
     return a;
   else
     return b;
}
पद्धत किमान दोन संख्या मिळवते. परत आला

तर परतa < b
a

b

उदाहरण 2. ही पद्धत तिला पास केलेल्या स्ट्रिंगची डुप्लिकेट करते n:

String multiple(String str, int times)
{
   String result = "";

   for (int i = 0; i < times; i++);
     result = result + " "+ str;
   return result;
}
पद्धत दोन पॅरामीटर्स घेते — एक स्ट्रिंग आणि स्ट्रिंगची किती वेळा पुनरावृत्ती करावी.
भविष्यातील निकालासाठी रिक्त स्ट्रिंग तयार केली आहे.

पुनरावृत्तीसह लूपमध्ये times, एक स्पेस आणि स्ट्रिंग strस्ट्रिंगमध्ये जोडली जाते result. पद्धतीचा परिणाम म्हणून
स्ट्रिंग परत केली जाते.result

उदाहरण 3: ही पद्धत टर्नरी ऑपरेटर वापरून जास्तीत जास्त दोन संख्यांची गणना करते:

int max(int a, int b)
{
   return (a > b ? a : b);
}
पद्धत जास्तीत जास्त दोन संख्या मिळवते.

परत (जर a > b, नंतर a, अन्यथा b)

"उत्कृष्ट. पद्धती ही माझी नवीन महाशक्ती आहे!"

"जर तुम्ही हाताशी असलेल्या कामांमध्ये पुरेसा सराव केलात तरच.