[Java] जावा में एक नई सूची कैसे बनाएं


Answers

इसके अतिरिक्त, यदि आप ऐसी सूची बनाना चाहते हैं जिसमें इसमें चीजें हैं (हालांकि यह निश्चित आकार होगा):

List<String> messages = Arrays.asList("Hello", "World!", "How", "Are", "You");
Question

हम एक Set बनाते हैं:

Set myset = new HashSet()

हम जावा में एक List कैसे बना सकते हैं?




जावा 7 के बाद से आपके पास जेनेरिक इंस्टेंस सृजन के लिए टाइप अनुमान है , इसलिए असाइनमेंट के दाईं ओर जेनेरिक पैरामीटर को डुप्लिकेट करने की आवश्यकता नहीं है:

List<String> list = new ArrayList<>();

एक निश्चित आकार की सूची को इस प्रकार परिभाषित किया जा सकता है:

List<String> list = Arrays.asList("foo", "bar");

अपरिवर्तनीय सूचियों के लिए आप Guava पुस्तकालय का उपयोग कर सकते हैं:

List<String> list = ImmutableList.of("foo", "bar");



सेट और सूची बनाने के कई तरीके हैं। हैशसेट और ऐरेलिस्ट केवल दो उदाहरण हैं। इन दिनों संग्रह के साथ जेनेरिक का उपयोग करना भी काफी आम है। मेरा सुझाव है कि आप देखें कि वे क्या हैं

यह जावा के बिल्टिन संग्रह के लिए एक अच्छा परिचय है। http://java.sun.com/javase/6/docs/technotes/guides/collections/overview.html




जावा 8 के साथ एक ही चीज़ करने के लिए और अधिक विकल्प, बेहतर नहीं, बदतर नहीं, बस अलग हैं और यदि आप सूचियों के साथ कुछ अतिरिक्त काम करना चाहते हैं, तो Streams आपको अधिक विकल्प प्रदान करेगा (फ़िल्टर, मानचित्र, कम इत्यादि)

List<String> listA = Stream.of("a", "B", "C").collect(Collectors.toList());
List<Integer> listB = IntStream.range(10, 20).boxed().collect(Collectors.toList());
List<Double> listC = DoubleStream.generate(() -> { return new Random().nextDouble(); }).limit(10).boxed().collect(Collectors.toList());
LinkedList<Integer> listD = Stream.iterate(0, x -> x++).limit(10).collect(Collectors.toCollection(LinkedList::new));



जावा 9 के साथ, आप एक अपरिवर्तनीय List बनाने के लिए निम्नलिखित करने में सक्षम हैं:

List<Integer> immutableList = List.of(1, 2, 3, 4, 5);

List<Integer> mutableList = new ArrayList<>(immutableList);



List list = new ArrayList();

या जेनेरिक के साथ

List<String> list = new ArrayList<String>();

आप निश्चित रूप से किसी भी प्रकार के चर के साथ स्ट्रिंग को प्रतिस्थापित कर सकते हैं, जैसे इंटीजर, भी।







List<Object> nameOfList = new ArrayList<Object>();

आपको List और ArrayList आयात करने की आवश्यकता है।




इसे इस्तेमाल करे:

List<String> messages = Arrays.asList("bla1", "bla2", "bla3");

या:

List<String> list1 = Lists.mutable.empty(); // Empty
List<String> list2 = Lists.mutable.of("One", "Two", "Three");



एक उदाहरण:

List somelist = new ArrayList();

आप List देख सकते हैं और जावा एपीआई के साथ शामिल List इंटरफेस के सभी ज्ञात कार्यान्वयन वर्गों को ढूंढ सकते हैं।




List Set तरह एक इंटरफेस है और सामान्य उद्देश्यों के कार्यान्वयन के रूप में ArrayList और LinkedList है

हम इस प्रकार सूची बना सकते हैं:

 List<String> arrayList = new ArrayList<>();
 List<String> linkedList = new LinkedList<>(); 

हम एक निश्चित आकार की सूची भी बना सकते हैं:

List<String> list = Arrays.asList("A", "B", "C");

हम लगभग हमेशा LinkedList किए गए LinkedList कार्यान्वयन के विरोध में LinkedList का उपयोग करेंगे:

  1. LinkedList ऑब्जेक्ट्स के लिए बहुत सी जगह का उपयोग करता है और जब हमारे पास बहुत सारे तत्व होते हैं तो बुरी तरह प्रदर्शन करता है।
  2. LinkedList में किसी भी अनुक्रमित ऑपरेशन के लिए O (n) समय की आवश्यकता है O (1) ArrayList
  3. अधिक जानकारी के लिए इस link को देखें।



Links