Java 9 में, कई फ़ैक्टरी विधियों ने संग्रह में जोड़ा है एपीआई . इन फ़ैक्टरी विधियों का उपयोग करके, हम अपरिवर्तनीय . बना सकते हैं कोड की पंक्तियों की संख्या को कम करने के लिए संग्रह वस्तुओं को सूचीबद्ध, सेट और मैप करें। List.of(), Set.of() , Map.of() और Map.ofEntries() स्थिर फ़ैक्टरी विधियाँ हैं जो अपरिवर्तनीय . बनाने का सुविधाजनक तरीका प्रदान करती हैं संग्रह जावा 9 में।
अपरिवर्तनीय संग्रह के लाभ
- कम स्थान: जावा के पुराने संस्करणों में पारंपरिक दृष्टिकोण की तुलना में संग्रह डेटा को संग्रहीत करने के लिए आवश्यक स्थान बहुत कम है।
- डेटा तक तेज़ पहुंच: डेटा को स्टोर करने और Collections.unmodifiable . में लपेटने के लिए ओवरहेड के रूप में कम हो गया है, अब डेटा एक्सेस तेज हो गया है। इसका मतलब है कि समग्र दक्षता कार्यक्रम में वृद्धि हुई है।
- थ्रेड सुरक्षा :अपरिवर्तनीय संग्रह स्वाभाविक रूप से hread-सुरक्षित . हैं . जैसा कि सभी थ्रेड्स को हमेशा अंतर्निहित डेटा का एक जैसा दृश्य मिलता है।
सिंटैक्स
List.of(elements...)Set.of(elements...)Map.of(k1, v1, k2, v2)
उदाहरण
आयात करें stringList =List.of ("ए", "बी", "सी"); System.out.println ("सूची मान:" + stringList); सेट करें<स्ट्रिंग> स्ट्रिंगसेट =सेट.ऑफ़ ("ए", "बी", "सी"); System.out.println ("सेट मान:" + स्ट्रिंगसेट); मानचित्र<स्ट्रिंग, पूर्णांक> stringMap =Map.of ("ए", 1, "बी", 2, "सी", 3); System.out.println ("मानचित्र मान:" + stringMap); }}आउटपुट
मानों की सूची बनाएं:[a, b, c]मान सेट करें:[a, b, c]मानचित्र मान:{a=1, b=2, c=3}