一、List简介
List是Java提供的一种集合类,它是一个有序的集合,可以存储重复元素。List常用的实现类有ArrayList和LinkedList,它们都实现了List接口,具有相似的性质和方法。
我们经常需要创建和初始化List对象,并向其中添加元素。接下来,本文将从多个方面详述Java初始化List的方法和技巧。
二、使用add()方法添加元素
List提供了add()方法来向其中添加元素。我们可以通过以下代码创建一个ArrayList对象,并向其中添加元素:
List<String> list = new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("orange");
这样,list中就存储了3个元素,分别是"apple"、"banana"和"orange"。
需要注意的是,由于List是一个有序的集合,它会按照元素添加的顺序进行存储。因此,在上述代码中,"apple"是第一个添加的元素,所以它在list中的位置是0。
三、使用addAll()方法添加多个元素
如果我们需要向List中添加多个元素,可以使用addAll()方法。该方法接受一个Collection类型的参数,用于存储需要添加的元素。
List<String> list1 = new ArrayList<>(); list1.add("apple"); list1.add("banana"); List<String> list2 = new ArrayList<>(); list2.add("orange"); list2.add("watermelon"); list1.addAll(list2);
在上述代码中,我们先创建了两个List对象list1和list2,分别向它们中添加了2个元素。然后,我们使用list1的addAll()方法,将list2中的元素添加到了list1中。此时,list1中的元素分别是"apple"、"banana"、"orange"和"watermelon"。
四、使用Arrays.asList()方法初始化List
Java提供了Arrays.asList()方法来将数组转换为List对象。我们可以通过以下代码创建一个包含多个元素的List对象:
String[] array = {"apple", "banana", "orange"}; List<String> list = Arrays.asList(array);
在上述代码中,我们先创建了一个字符串数组array,它包含3个元素。然后,我们使用Arrays.asList()方法将该数组转换为List对象,并将结果存储到list中。此时,list中的元素分别是"apple"、"banana"和"orange"。
五、使用Collections.nCopies()方法初始化List
如果我们需要创建一个包含多个重复元素的List对象,可以使用Collections.nCopies()方法。该方法接受两个参数,第一个参数为重复的元素,第二个参数为重复的次数。
List<String> list = Collections.nCopies(3, "apple");
在上述代码中,我们使用Collections.nCopies()方法创建一个包含3个"apple"元素的List对象。
六、使用Stream初始化List
Java 8引入了Stream API,我们可以使用它来方便地初始化List对象。Stream API中的collect()方法能够将Stream转换为List对象。
List<Integer> list = Stream.of(1, 2, 3, 4, 5) .collect(Collectors.toList());
在上述代码中,我们先使用Stream.of()方法创建一个包含5个整数的Stream对象。然后,使用collect()方法将该Stream转换为List对象,并将结果存储到list中。此时,list中的元素分别是1、2、3、4和5。
七、使用Iterator遍历List
通过上述方法,我们可以创建和初始化List对象。接下来,我们需要对List中的元素进行遍历。
我们可以使用Iterator来遍历List对象。Iterator是一个Java迭代器,可以用于遍历集合中的元素。
List<String> list = Arrays.asList("apple", "banana", "orange"); Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
在上述代码中,我们先使用Arrays.asList()方法创建了一个包含3个元素的List对象。然后,我们使用list的iterator()方法获取该List的迭代器iterator。最后,我们使用while循环和iterator的hasNext()、next()方法遍历List中的元素,并在控制台中输出每个元素的值。
八、使用for-each循环遍历List
除了使用Iterator,我们还可以使用for-each循环来遍历List对象。for-each循环是一种简化的for循环,可以用于遍历实现了Iterable接口的集合。
List<String> list = Arrays.asList("apple", "banana", "orange"); for (String item : list) { System.out.println(item); }
在上述代码中,我们先使用Arrays.asList()方法创建了一个包含3个元素的List对象。然后,我们使用for-each循环遍历该List中的元素,并在控制台中输出每个元素的值。