कुछ विधि के लिए पहली कॉल कैसे स्पष्ट नहीं है कि यह स्ट्रिंग [] है?तर्क सूची में जावा सरणी प्रारंभिकरण
स्ट्रिंग [] सरणी बनाने के लिए सरणी प्रारंभकर्ता का उपयोग करना ठीक है लेकिन आप इसे तर्क देने के लिए उपयोग नहीं कर सकते हैं। क्या घुंघराले ब्रेसिज़ किसी अन्य फैशन में तर्कों को पारित करने के लिए उपयोग किए जाते हैं जो इस बात से निकलते हैं कि मैं इससे कैसे व्यवहार करूंगा?
public void someMethod(String[] arr){
//do some magic
}
public void makeSomeMagic(){
String[] arr = {"cat", "fish", "cow"};
//Does not compile!
someMethod({"cat", "fish", "cow"});
//This compiles!
someMethod(new String[]{"cat", "fish", "cow"});
//This compiles!
someMethod(arr);
}
संकलक त्रुटि निम्नलिखित है:
विधि someMethod (String []) प्रकार में मू तर्क के लिए लागू नहीं है (स्ट्रिंग, स्ट्रिंग, स्ट्रिंग)
इसकी घोषणा केवल समय पर ही दी गई है। यह एक वाक्यविन्यास चीज है –