जावा में ऐरे क्रमबद्ध अनुक्रम वाला संग्रह हैं।
ऐरे के विपरीत, एक List कितने भी आइटम रखने के लिए अपने आकार में बढ़ सकता है।
एक मानक कार्यान्वयन ArrayList है, जो एक ऐसे ऐरे पर आधारित है जिसका आकार बदला जा सकता है।
दूसरा मानक कार्यान्वयन LinkedList क्लास है, जो एक डबल लिंक्ड लिस्ट पर आधारित है।
List खाली हो सकता है या कितने भी आइटम रख सकता है (एक जैसे आइटम भी)।
List एक जेनेरिक इंटरफ़ेस है, जिसका टाइप बताता है कि उसमें किस तरह के ऑब्जेक्ट रखे जा सकते हैं।
उदाहरण के लिए:
List<String> emptyListOfStrings = List.of();
List<Integer> singleInteger = List.of(1);
List<Boolean> threeBooleans = List.of(true, false, true);
List<Object> listWithMultipleTypes = List.of("hello", 1, true);
List में किसी एलिमेंट को जोड़ने, हटाने, पाने और उसके मौजूद होने की जाँच करने के लिए कई उपयोगी मेथड हैं:
List<Character> vowels = new ArrayList<>(List.of('a', 'e', 'i', 'o', 'i', 'e', 'a'));
int startingSize = vowels.size(); // 7
vowels.add('u'); // vowels is now ['a', 'e', 'i', 'o', 'i', 'e', 'a', 'u']
char a = vowels.get(0); // 'a'
boolean hadI = vowels.remove('i'); // true and vowels is now ['a', 'e', 'o', 'i', 'e', 'a', 'u']
boolean hasI = vowels.contains('i'); // true (still have one more left)
Collections क्लास में भी List जैसे संग्रहों से काम करने के लिए कुछ उपयोगी टूल हैं:
List<Integer> numbers = new ArrayList<>(List.of(1, 5, 3, 2, 4));
Collections.sort(numbers); // [1, 2, 3, 4, 5]
Collections.reverse(numbers); // [5, 4, 3, 2, 1]
Collections.fill(numbers, 42); // [42, 42, 42, 42, 42]
List<Integer> fiveNines = Collections.nCopies(5, 9); // [9, 9, 9, 9, 9]