जावामध्ये व्हेरिएबल युक्तिवाद किंवा व्हेरिएबल आपल्याला अधिक लवचिक पद्धती लिहिण्याची परवानगी देते जी आवश्यकतेनुसार अनेक वितर्क स्वीकारू शकते. चल युक्तिवाद किंवा वितर्क जावा 1.5 मध्ये जोडले गेले आहेत, तसेच उत्कृष्ट भाषा वैशिष्ट्ये जसे की: जावा एनम:, जेनेरिक्स:, ऑटोबॉक्स և इतर पर्याय, व्हेरिएबल आर्ग्युमेंट्स हे तुलनेने लहान वैशिष्ट्य आहे, परंतु पद्धती -अॅरेमध्ये पारंगत असलेल्या विकसकासाठी उपयुक्त आहे, काही काळासाठी आमच्याकडे अशी परिस्थिती होती जिथे एक पद्धत वेगळ्या संख्येने युक्तिवाद घेऊ शकते आणि आता भाषा आवृत्त्यांची उपलब्धता हे बरेच सोपे करते. या जावा ट्युटोरियलमध्ये आपण बघू शकतो की व्हेरिएबल आर्ग्युमेंट्स सुलभ पद्धती कशी लिहू शकतात जी कोणत्याही प्रकारचे तर्क, परिपूर्ण उमेदवार स्वीकारू शकतात. रक्कम () आणि सरासरी:() पद्धतींचे प्रकार.

जावा 1.5 च्या आधी चल युक्तिवाद

जावा आधी 1.5 जावा प्रोग्रामरकडे मुळात दोन पर्याय आहेत.

1. किंवा पद्धत ओव्हरलोड करा.

2. एकतर अॅरे किंवा संग्रह घेऊ शकतो – अॅरेमध्ये लपेटलेल्या वितर्क किंवा अॅरेची संख्या उत्तीर्ण करू शकतो, जसे की सूची ड्रॉप, संग्रह किंवा नकाशा.

परंतु समस्या अशी आहे की जर त्याने पद्धत ओव्हरलोड केली तर त्याला माहित नाही की त्याला किती वितर्क सोडवावे लागतील, कोडमध्ये किती पद्धती तयार केल्या जातील, म्हणजे कोड बेकार होईल, किंवा जर त्याने पुरेसे तयार केले नसेल पद्धत, त्याला पुन्हा कोड बदलावे लागतील.हे एक पुनरावृत्ती कार्य बनते जे चांगले नाही प्रोग्रामिंग सराव more अधिक देखभाल आवश्यक आहे.


आता आपण अॅरेसाठी जाऊ शकतो, पण अॅरे तयार करण्यासाठी आपण हे कार्य जावाला का देत नाही, आंतरिक कॉन्फिगरेशनसाठी त्या अॅरेमध्ये घटक ठेवा, प्रोग्रामरला त्यातून मुक्त होऊ द्या, हे लक्षात घेऊन अवशेष अस्तित्वात येते.

varargs किंवा व्हेरिएबल आर्ग्युमेंट्स आम्हाला व्हेरिएबल संख्येच्या वितर्कांसह एका पद्धतीवर कॉल करण्याची परवानगी देतात. म्हणजे फक्त एक पद्धत परिभाषित करणे; त्या पद्धतीला शून्य किंवा शून्यापेक्षा जास्त युक्तिवादाने कॉल करणे.

मांडणी:

प्रकार … व्हेरिएबल नाव:

लंबवर्तुळ म्हणजे व्हेरिएबल युक्तिवाद जावा हा एकाच प्रकारचा डेटा सेट म्हणून व्हेरिएबल युक्तिवाद संदर्भित करतो. पद्धतीमध्ये व्हेरिएबल युक्तिवाद दर्शविण्यासाठी 3 गुण वापरले जातात, one जर एकापेक्षा जास्त मापदंड असतील तर वरॅग्स वितर्क अंतिम असणे आवश्यक आहे, जसे खाली सूचीबद्ध केले आहे.

पडदे वापरताना काही मुद्द्यांकडे लक्ष द्या.

  1. पद्धत सेटिंग्ज सूचीमध्ये लंबवर्तुळ एकदा वापरला जाऊ शकतो.
  2. पॅरामीटर सूचीमध्ये पद्धतीच्या शेवटी लंबवर्तुळाचा प्रकार वापरला पाहिजे

जावा मध्ये पडदे एक वास्तविक उदाहरण

प्रथम, आम्ही एक वास्तविक परिस्थिती बघतो, समजा आपण एका महाविद्यालयात जातो, आम्ही त्या महाविद्यालयात प्रवेश घेतो, आता हे खरोखरच ठरलेले नाही की प्रवेश एकाच वेळी 50 विद्यार्थी किंवा 100 किंवा त्यापेक्षा जास्त असू शकतात. अशा प्रकारे, महाविद्यालय एक वर्ग आहे आणि प्रवेश ही एक प्रक्रिया किंवा पद्धत आहे जी कोणताही विद्यार्थी वाद म्हणून स्वीकारत नाही.

/ **
* व्हेरिएबल युक्तिवाद पद्धतींचे वास्तविक जग उदाहरण
* /

सार्वजनिक: श्रेणी: कॉलेज: {सार्वजनिक: रिक्त प्रवेश_ पद्धती: (s:नाही_विद्यार्थी) {
// प्रक्रियेसाठी उर्वरित कोड }}

साध्या जावा चल युक्तिवादाचे उदाहरण.

N चा गुणाकार शोधण्याचे एक साधे उदाहरण विचारात घेऊ. आम्ही प्रथम ओव्हरलोड पद्धतीचा वापर करून ही समस्या सोडवण्याचा प्रयत्न करू

/ **
* जावा प्रोग्राम जो चल युक्तिवाद पद्धत वापरण्याचा प्रयत्न करतो
* पद्धत ओव्हरलोड. जेव्हा पॅरामीटर संख्या ओलांडली गेली तेव्हा हे अस्ताव्यस्त होऊ लागले
* पाच
* /

श्रेणी: Vargarz उदाहरण:{

सार्वजनिक: s: गुणाकार(s: अ,s: ब:) { परत*ब:;}

सार्वजनिक: s: गुणाकार(s: अ,s: ब,s: c:) { परत (*ब:)*c:;}

सार्वजनिक: s: गुणाकार(s: अ,s: ब,s: c,s: d:{ परत (*ब:)*(c:*d:);}}

जर आपण ओव्हरलोड पद्धतीचा वापर केला तर तीच पद्धत वारंवार पुन्हा पुन्हा केली जाईल; चार किंवा पाच पॅरामीटर्सनंतर त्याची किंमत नाही. आता या समस्येचे निराकरण करण्यासाठी वस्तुमान व्हेरिएबल युक्तिवाद देखील वापरेल.

कसे ते पाहू.

/ **
* जावा प्रोग्राम जो चल युक्तिवाद पद्धत वापरण्याचा प्रयत्न करतो
* पद्धत ओव्हरलोड. जेव्हा पॅरामीटर संख्या ओलांडली गेली तेव्हा हे अस्ताव्यस्त होऊ लागले
* पाच
* /

श्रेणी: Vargarz उदाहरण:{

/ *
* रिटर्न अॅरे मधील सर्व संख्या गुणाकार करा
* /

सार्वजनिक: s: गुणाकार(s:[] संख्या) {
s: परिणाम =: 1:;

च्या साठी(s: च्या साठी: संख्या) {
परिणाम = परिणाम
*संख्या:;
}

परत परिणाम:
}
}

येथे आपल्याला एक संपूर्ण अॅरे तयार करायची आहे, ती अ‍ॅरे पद्धतीला पास करायची आहे, त्यानंतर परिणाम मिळवण्यासाठी अॅरेची पुनरावृत्ती करा. आम्ही हे सोपे करू शकतो जावा 5 द्वारे प्रदान केलेला व्हेरिएबल युक्तिवाद जिथे मोठ्या प्रमाणावर निर्मिती होईल – आपले कार्य सोपे होईल.

/ **
* जावा प्रोग्राम जो व्हेरिएबल्स वैशिष्ट्ये वापरून व्हेरिएबल नंबर स्वीकारतो
* युक्तिवाद. व्हेरिएबल युक्तिवाद एका निनावी अॅरेद्वारे केले जातात जर:
* पडद्याऐवजी वस्तुमान वगळता अचूक समान स्वाक्षरी असलेली दुसरी पद्धत प्राप्त केली जाईल
* संकलक त्रुटीच्या बाबतीत.
* /

श्रेणी: Vargarz उदाहरण:{

/ *
* अॅरेमधील सर्व संख्यांचे रिटर्न परत करा
* जर varargs पद्धत varargs वितर्क पेक्षा एकापेक्षा जास्त मापदंड स्वीकारते
* शेवटचा मापदंड असावा.
* /

सार्वजनिक: s: गुणाकार(s:संख्या) {
s: परिणाम =: 1:;

च्या साठी(s: च्या साठी: संख्या) {
परिणाम = परिणाम
*संख्या:;
}

परत परिणाम:
}
}

व्हेरिएबल युक्तिवाद किंवा भिन्नता पद्धतींशी संबंधित महत्त्वाचे मुद्दे.

1) प्रत्येक कॉल: वर्गर पद्धत आवश्यक आहे निनावी वस्तुमान तयार करणे – आरंभ करणे, जे वेळेच्या प्रकल्पांमध्ये केलेल्या कामावर परिणाम करू शकते. उत्तम कामगिरीसाठी प्रशिक्षणाला पर्याय आहे. समजा तुमच्याकडे व्हेरिएबल युक्तिवाद पद्धत आहे मी (पूर्णांक …) 90 90% प्रकरणांमध्ये 2 पॅरामीटर्ससह म्हटले जाते.
Ar ված initialization टाळण्यासाठी तुम्ही वापरू शकता जावा मध्ये पद्धत ओव्हरलोड दोन पर्याय द्या रक्कम () जे स्वीकारतात s: त्याऐवजी अवशेष, वर्गातील 90% वेळेसाठी चांगल्या कामगिरीच्या पर्यायाचे उदाहरण येथे आहे

सार्वजनिक int बेरीज (int a);

सार्वजनिक int बेरीज (int a, int b);

सार्वजनिक int बेरीज (int num …);

आता 90% वेळ पद्धत पडद्याशिवाय वापरली जाईल व्हेरिएबल युक्तिवादासह 10% वेळ पद्धती म्हटले जाईल.

2) तो: JDK कडून व्हेरिएबल युक्तिवाद पद्धतीचे उदाहरण आहे: Arrays.asList (T … args) ज्याला त्याची सवय होती Array ला ArrayList मध्ये रूपांतरित करा JDK 1.5 च्या आधी, परंतु JDK 1.5 च्या व्हेरिएबल युक्तिवादाचे समर्थन करण्यासाठी श्रेणीसुधारित केले. आपण आता फ्लाइटमध्ये सूची सादरीकरण तयार करू इच्छिता तितक्या ओळी किंवा वस्तू पास करून या पद्धतीचा संदर्भ घेऊ शकता. हे सर्वात वेगवान मार्गांपैकी एक आहे पंक्ती सूचीमध्ये रूपांतरित करा दिवस

यादी listOfString = Arrays.asList (“लाल”, “पांढरा”, “निळा”);

3) पद्धती पद्धतींचे आणखी एक उदाहरण आहे java.lang.reflect: पॅकेज प्रतिबिंब व्हेरिएबल युक्तिवादाच्या अनेक पद्धती वापरते डायनॅमिकली कॉल करण्याची ओव्हरलोड पद्धतओव्हरलोड केलेल्या पद्धतीची योग्य आवृत्ती मिळवण्यासाठी मेथड क्लासने व्हेरिएबल युक्तिवाद वापरला. Method.getMethod (पंक्तीचे नाव, वर्ग … पॅरामीटरचे प्रकार) पॅरामीटर प्रकार म्हणून शेवटचा युक्तिवाद वापरतो, जो व्हेरिएबल युक्तिवाद आहे – कोणत्याही पॅरामीटर्सला स्वीकारू शकतो. हे पद्धतशीर नावासाठी वापरले जाते.
4) जर तुम्ही एखाद्या जागरूक प्रकल्पावर काम करत असाल जे जावा 1.5 किंवा त्यापेक्षा जास्त कार्य करत नसेल, तर तुम्ही व्हेरिएबल युक्तिवाद पद्धती वापरून वापरू शकता अनामिक वस्तुमान किंवा: संकलनाचे धडे जसे: ArrayList किंवा HashSet:,

एआर किंवा सेट वर्ग अनेक वितर्क एकामध्ये गुंडाळू शकतात. संकलन फ्रेमवर्क वापरल्याने API मध्ये समृद्ध होण्याचा अतिरिक्त फायदा होतो, उदाहरणार्थ, अर्थपूर्ण पंक्ती () पद्धत, पुनरावृत्तीसाठी समर्थन इ.

व्हेरिएबल वितर्क किंवा जावा च्या आवृत्ती बद्दल सर्व. कृपया तुम्ही व्हेरिएबल युक्तिवाद कसे वापरता आणि तुम्ही त्यांच्याबद्दल काय विचार करता ते मला कळवा.

संबंधित जावा शिकवण्या: