संभव डुप्लिकेट में इन तीन बिंदुओं क्या हैं:
What is the ellipsis for in this method signature?पैरामीटर प्रकार
उदाहरण के लिए: protected void onProgressUpdate(Context... values)
संभव डुप्लिकेट में इन तीन बिंदुओं क्या हैं:
What is the ellipsis for in this method signature?पैरामीटर प्रकार
उदाहरण के लिए: protected void onProgressUpdate(Context... values)
एक शब्द: varargs
.
अंतिम पैरामीटर के प्रकार के बाद तीन अवधि इंगित करती है कि अंतिम तर्क तर्कों के अनुक्रम के रूप में सरणी या के रूप में पारित किया जा सकता है। अंतिम तर्क स्थिति में Varargs केवल का उपयोग किया जा सकता है।
उन्हें varargs कहा जाता है, और जावा 5 में पेश किया गया था। अधिक जानकारी के लिए http://download.oracle.com/javase/1.5.0/docs/guide/language/varargs.html पढ़ें।
संक्षेप में, यह एक बनाने के बिना किसी विधि को एक सरणी पास करने की अनुमति देता है, जैसे कि विधि ने तर्कों की एक परिवर्तनीय संख्या ली है। अपने उदाहरण में, निम्नलिखित चार कॉल मान्य होगा:
onProgressUpdate();
onProgressUpdate(context1);
onProgressUpdate(context1, context2, context3);
onProgressUpdate(new Context[] {context1, context2});
इसके varargs
Varargs
तीन डॉट्स पर जावा 5. अधिक जानकारी में पेश कहा जाता है अंडाकार। विधि को संदर्भ प्रकार के किसी भी संख्या कहा जा सकता है। आप उस विधि को बिना किसी मूल्य के कॉल कर सकते हैं।
इसका मतलब है कि values
तर्क Context
ऑब्जेक्ट्स का एक वैकल्पिक सरणी है। तो आप निम्न तरीकों से "onProgressUpdate" समारोह कह सकते हैं:
onProgressUpdate(); // values is an empty array.
onProgressUpdate(new Context[] { new Context() }); // values has one item.
onProgressUpdate(context1, context2); // values has two items.
जावा 1.5 में पेश किया varargs भाषा सुविधा देखें।
इसका मतलब है कि आप मानों की श्रेणी में रख सकते हैं:
onProgessUpdate(c1,c2,c3);