नहीं, आप किसी सरणी के तत्वों को अपरिवर्तनीय नहीं बना सकते।
लेकिन अपरिवर्तनीय सूची () java.util.Collections . की विधि वर्ग सूची इंटरफ़ेस (इसकी कक्षा को लागू करने की वस्तु) के ऑब्जेक्ट को स्वीकार करता है और दिए गए ऑब्जेक्ट का एक अपरिवर्तनीय रूप देता है। उपयोगकर्ता के पास प्राप्त सूची तक केवल पढ़ने के लिए पहुंच है।
और asList() ArrayList . की विधि वर्ग एक सरणी स्वीकार करता है और एक सूची वस्तु देता है।
इसलिए, किसी सरणी को अपरिवर्तनीय बदलने के लिए -
-
वांछित सरणी प्राप्त करें।
-
asList() . का उपयोग करके इसे सूची ऑब्जेक्ट में बदलें विधि।
-
प्राप्त सूची को पैरामीटर के रूप में unmoditableList() . के पास पास करें विधि।
उदाहरण
आयात करें {"राजू", "राम", "रहमान", "राहेल", "रणभीर", "रंगन"}; // स्ट्रिंग सरणी को सूची वस्तु सूची में परिवर्तित करना सूची <स्ट्रिंग> सूची =Arrays.asList (strArray); // सूची वस्तु को अपरिवर्तनीय सूची में परिवर्तित करना <स्ट्रिंग> अपरिवर्तनीय =Collections.unmodifiableList(list); System.out.println (अपरिवर्तनीय); अपरिवर्तनीय। जोड़ें ("कोमाला"); }}आउटपुट
[राजू, रामा, रहमान, राचेल, रनभीर, रंगन] थ्रेड में अपवाद "मुख्य" java.lang.UnsupportedOperationException at java.util.Collections$UnmodifiableCollection.add (अज्ञात स्रोत) सितंबर19 पर। जावा:19)