Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा 9 में संग्रह फ़ैक्टरी विधियों के लिए क्या शर्तें हैं?


Java 9 में, फ़ैक्टरी विधियाँ संग्रह . में जोड़ दिया गया है एपीआई . हम एक अपरिवर्तनीय . बना सकते हैं सूची, सेट और मानचित्र संग्रह वस्तुओं का उपयोग करके कोड की पंक्तियों की संख्या को कम करने के लिए। List.of(), Set.of(), Map.of() , और Map.ofEntries() स्थिर फ़ैक्टरी विधियां हैं अपरिवर्तनीय . बनाने का सुविधाजनक तरीका प्रदान करता है संग्रह

नीचे शर्तें हैं संग्रह फ़ैक्टरी विधियों के लिए:

  • वे संरचनात्मक रूप से अपरिवर्तनीय हैं।
  • वे अशक्त तत्वों या नल कुंजियों को अस्वीकार करते हैं।
  • यदि सभी तत्व क्रमबद्ध हैं, तो वे क्रमबद्ध हैं।
  • निर्माण के समय वे डुप्लीकेट तत्वों/कुंजी को अस्वीकार करते हैं।
  • सेट तत्वों का पुनरावृत्ति क्रम अनिर्दिष्ट है और परिवर्तन के अधीन है।
  • वे मूल्य आधारित हैं। कारखाने नए उदाहरण बनाने या मौजूदा का पुन:उपयोग करने के लिए स्वतंत्र हैं। इसलिए, इन उदाहरणों पर पहचान-संवेदनशील संचालन, पहचान हैश कोड और सिंक्रनाइज़ेशन अविश्वसनीय हैं और इससे बचा जा सकता है।

सिंटैक्स

List.of(elements...)Set.of(elements...)Map.of(k1, v1, k2, v2) 

उदाहरण

आयात करें सेट करें<स्ट्रिंग> अपरिवर्तनीयकंट्रीसेट =सेट.ऑफ़ ("भारत", "इंग्लैंड", "दक्षिण अफ्रीका", "ऑस्ट्रेलिया"); System.out.println (अपरिवर्तनीयकंट्रीसेट); कोशिश करें {immutableCountrySet.जोड़ें ("न्यूज़ीलैंड"); } पकड़ (अपवाद ई) { System.out.println ("पकड़ा गया अपवाद, अपरिवर्तनीय संग्रह में प्रविष्टि जोड़ना!"); } }}

आउटपुट

Java 9 ने एक स्थिर फ़ैक्टरी पद्धति का परिचय दिया:of()[दक्षिण अफ्रीका, भारत, ऑस्ट्रेलिया, इंग्लैंड] अपवाद को पकड़ा, अपरिवर्तनीय संग्रह में प्रविष्टि जोड़ना! 

  1. जावा 9 में @Deprecated एनोटेशन के लिए क्या सुधार हैं?

    कोई भी तत्व जिसे @Deprecated से एनोटेट किया जा सकता है यह दर्शाता है कि इस विशेष तत्व का अब निम्न कारणों से उपयोग नहीं किया जाएगा इसका उपयोग करना जोखिम भरा है और इससे त्रुटियां हो सकती हैं। भविष्य के संस्करणों में असंगत हो सकता है। भविष्य के संस्करणों में हटाया जा सकता है। एक बेहतर और अधिक कुशल समा

  1. जावा में JTextPane और JEditorPane के बीच क्या अंतर हैं?

    एक JTextPane JEditorPane . का विस्तार है जो फोंट, टेक्स्ट स्टाइल, रंग . जैसी वर्ड प्रोसेसिंग सुविधाएँ प्रदान करता है और आदि। यदि हमें भारी-भरकम टेक्स्ट प्रोसेसिंग करने की आवश्यकता है तो हम इस वर्ग का उपयोग कर सकते हैं जबकि एक JEditorPane HTML . के प्रदर्शन/संपादन का समर्थन करता है और आरटीएफ साम

  1. जावा में तुलना () और तुलना () विधियों के बीच अंतर क्या हैं?

    तुलनीय इंटरफ़ेस एक तुलना करने के लिए () . प्रदान करता है वस्तुओं के क्रम के लिए विधि। इस आदेश को वर्ग का . कहा जाता है प्राकृतिक क्रम और तुलना करें () विधि को इसकी प्राकृतिक तुलना विधि . कहा जाता है . तुलनित्र इंटरफ़ेस सॉर्टिंग ऑपरेशन करने के तरीके प्रदान करता है . तुलनित्र . का उपयोग करके इंटर