मनोज,
Arrays.List की वापसी प्रकार सूची इंटरफ़ेस के कुछ अज्ञात आंतरिक कार्यान्वयन और नहीं java.util.ArrayList है, इसलिए आप केवल एक सूची प्रकार को असाइन कर सकें।
आप उदाहरण के लिए एक ArrayList के लिए असाइन करें यदि यह आप संकलन समय त्रुटि "प्रकार बेमेल: सूची से परिवर्तित नहीं कर सकते ArrayList करने के लिए" दे देंगे
ArrayList<String> aList = Arrays.asList(a);// gives Compile time error
Javadoc से "Arrays.asList एक फिक्स्ड रिटर्न निर्दिष्ट सरणी द्वारा समर्थित आकार सूची। (लौटाई गई सूची में परिवर्तन "सरणी के माध्यम से" लिखें।) "इसका मतलब है कि आपको केवल ऐरे का एक सूची दृश्य प्रदान किया जाता है जिसे आईएमओ रनटाइम पर बनाया गया है और आप आकार बदल नहीं सकते एक सरणी का ताकि आप "Arrays.asList" के आकार को भी बदल सकें।
void add(E e)
{
//some unknown code
throw(java.lang.UnsupportedOperationException);
}
इसलिए जब भी आप सरणी यह UnsupportedOperationException फेंकता के आकार में परिवर्तन करने का प्रयास -
IMO Arrays.asList की आंतरिक कार्यान्वयन सभी कार्यान्वित तरीकों के रूप में सरणी के आकार बदल सकते हैं।
फिर भी यदि आप इस तरह के सिंटैक्स का उपयोग करके एक ऐरेलिस्ट में कुछ नए आइटम जोड़ना चाहते हैं, तो आप Arraylist का उप-वर्ग बनाकर ऐसा कर सकते हैं (अधिमानतः ArrayList के अज्ञात उपclass का उपयोग करके)। आप ArrayList के निर्माता को Arrays.List की वापसी प्रकार पारित कर सकते हैं, कुछ इस तरह (यानी सार्वजनिक ArrayList (संग्रह ग)।) -
List<String> girlFriends = new java.util.ArrayList<String>(Arrays.asList("Rose", "Leena", "Kim", "Tina"));
girlFriends.add("Sarah");
अब आप आसानी से एक ही का उपयोग कर अपने GF सूची में सारा जोड़ सकते हैं वाक्य - विन्यास।
पीएस - कृपया इसे एक या दूसरे को अपने उत्तर के रूप में चुनें क्योंकि evrything समझाया गया है। आपकी कम स्वीकृति दर बहुत निराशाजनक है।
इससे कोई फर्क नहीं पड़ता कि 'लोग क्या कहते हैं'। यह जवाडोक * क्या मायने रखता है। – EJP