java list两两合并的10种方式

复制代码
public static<T> List<T> merge(List<T> list1, List<T> list2)
{
    List<T> list = new ArrayList<>();
    list.addAll(list1);
    list.addAll(list2);
    return list;
}
public static<T> List<T> merge2(List<T> list1, List<T> list2)
{
    List<T> list = new ArrayList<>(list1);
    list.addAll(list2);
    return list;
}
public static<T> List<T> merge3(List<T> list1, List<T> list2)
{
    return new ArrayList<T>() {{
        addAll(list1);
        addAll(list2);
    }};
}
public static List<String> merge4(List<String> list1, List<String> list2)
{
    List<String> list = new ArrayList<>();
    Collections.addAll(list, list1.toArray(new String[0]));
    Collections.addAll(list, list2.toArray(new String[0]));
    return list;
}

public static<T> List<T> merge5(List<T> list1, List<T> list2)
{
    return Stream.of(list1, list2)
            .flatMap(x -> x.stream())
            .collect(Collectors.toList());
}

public static<T> List<T> merge6(List<T> list1, List<T> list2)
{
    List<T> list = new ArrayList<>();
    Stream.of(list1, list2).forEach(list::addAll);
    return list;
}

// Generic method to join two lists in Java
public static<T> List<T> merge7(List<T> list1, List<T> list2)
{
    List<T> list = list1.stream().collect(Collectors.toList());
    list.addAll(list2);
    return list;
}

// Generic method to join two lists in Java
public static<T> List<T> merge8(List<T> list1, List<T> list2) {
    return Lists.newArrayList(Iterables.concat(list1, list2));
}

// Generic method to join two lists in Java
public static<T> List<T> merge9(List<T> list1, List<T> list2)
{
    List<T> list = Lists.newArrayList();
    Iterables.addAll(list, list1);
    Iterables.addAll(list, list2);
    return list;
}

// Generic method to join two lists in Java
public static<T> List<T> merge10(List<T> list1, List<T> list2) {
    return ListUtils.union(list1, list2);
}
相关推荐
anlogic3 分钟前
Java基础 8.18
java·开发语言
胡萝卜3.025 分钟前
数据结构初阶:排序算法(一)插入排序、选择排序
数据结构·笔记·学习·算法·排序算法·学习方法
lyx331369675935 分钟前
Pandas数据结构详解Series与DataFrame
数据结构·pandas
练习时长一年1 小时前
AopAutoConfiguration源码阅读
java·spring boot·intellij-idea
散1121 小时前
01数据结构-交换排序
数据结构·算法
源码宝2 小时前
【智慧工地源码】智慧工地云平台系统,涵盖安全、质量、环境、人员和设备五大管理模块,实现实时监控、智能预警和数据分析。
java·大数据·spring cloud·数据分析·源码·智慧工地·云平台
David爱编程3 小时前
面试必问!线程生命周期与状态转换详解
java·后端
LKAI.3 小时前
传统方式部署(RuoYi-Cloud)微服务
java·linux·前端·后端·微服务·node.js·ruoyi
HeyZoeHey3 小时前
Mybatis执行sql流程(一)
java·sql·mybatis
2301_793086873 小时前
SpringCloud 07 微服务网关
java·spring cloud·微服务