0


Java 将不同的List集合复制到另一个集合

在Java中,你可以使用多种方法将一个或多个

List

集合的元素复制到另一个

List

集合中。

以下是一些常见的方法:

  1. 使用addAll方法: 如果要将一个List的所有元素添加到另一个List的末尾,可以使用addAll方法。List<String> list1 =Arrays.asList("a","b","c");List<String> list2 =newArrayList<>();list2.addAll(list1);// list2 现在包含 "a", "b", "c"
  2. 使用addAll方法添加多个List: 如果要将多个List的元素都添加到同一个List中,可以多次调用addAll方法。List<String> list1 =Arrays.asList("a","b","c");List<String> list2 =Arrays.asList("d","e","f");List<String> combinedList =newArrayList<>();combinedList.addAll(list1);combinedList.addAll(list2);// combinedList 现在包含 "a", "b", "c", "d", "e", "f"
  3. 使用Java 8的Stream API(如果你想要合并并处理元素): 虽然Stream API通常用于处理集合中的元素,但你也可以用它来合并ListList<String> list1 =Arrays.asList("a","b","c");List<String> list2 =Arrays.asList("d","e","f");List<String> combinedList =Stream.concat(list1.stream(), list2.stream()).collect(Collectors.toList());// combinedList 现在包含 "a", "b", "c", "d", "e", "f"
  4. 使用循环: 虽然这种方法不如上面的方法优雅,但你也可以使用循环来逐个添加元素。List<String> list1 =Arrays.asList("a","b","c");List<String> list2 =newArrayList<>();for(String s : list1){ list2.add(s);}// list2 现在包含 "a", "b", "c"
  5. **使用Collections.copy**(注意:这种方法只适用于具有相同大小的列表,并且目标列表必须预先分配好足够的空间): 虽然Collections.copy通常用于复制数组的内容到列表中,或者复制列表的一部分到另一个列表,但它不适合用于合并两个不同大小的列表。List<String> list1 =Arrays.asList("a","b","c");List<String> list2 =newArrayList<>(list1.size());// 预先分配空间Collections.copy(list2, list1.toArray(newString[0]));// 注意:这种方法通常不用于合并列表// list2 现在包含 "a", "b", "c",但这并不是合并两个列表的标准用法

在实际应用中,最常见的方法是使用

addAll

方法或Java 8的Stream API来合并列表。

  1. 使用fastjson ,针对不同的对象实体:List<Entity1> list1 =newArrayList<>(newEntity1(),newEntity2())List<Entity2> list2 =newArrayList<>(list1.size());// 预先分配空间List<Entity2> list3 =JSON.parseArray(JSON.toJSONString(list1),Entity2.class);

//JSON.toJSONString(list1)先将list转成字符串数组,然后再使用JSON.parseArray()转成list对象数组

标签: java list

本文转载自: https://blog.csdn.net/qq_33851668/article/details/139828420
版权归原作者 德乐懿 所有, 如有侵权,请联系我们删除。

“Java 将不同的List集合复制到另一个集合”的评论:

还没有评论