有什么方法可以做到这一点吗?我在找,但没找到.

另一个问题:我需要这些方法来过滤文件.

我是否应该使用不同的数据 struct 来保存文件?还有没有其他东西可以提供更好的运行时?

推荐答案

下面是一个不使用任何第三方库的简单实现.与retainAllremoveAlladdAll相比,主要优点是这些方法不会修改输入到这些方法的原始列表.

public class Test {

    public static void main(String... args) throws Exception {

        List<String> list1 = new ArrayList<String>(Arrays.asList("A", "B", "C"));
        List<String> list2 = new ArrayList<String>(Arrays.asList("B", "C", "D", "E", "F"));

        System.out.println(new Test().intersection(list1, list2));
        System.out.println(new Test().union(list1, list2));
    }

    public <T> List<T> union(List<T> list1, List<T> list2) {
        Set<T> set = new HashSet<T>();

        set.addAll(list1);
        set.addAll(list2);

        return new ArrayList<T>(set);
    }

    public <T> List<T> intersection(List<T> list1, List<T> list2) {
        List<T> list = new ArrayList<T>();

        for (T t : list1) {
            if(list2.contains(t)) {
                list.add(t);
            }
        }

        return list;
    }
}

Java相关问答推荐

如何专门保存数据而不显示在jTable中?

使用json参数通过单击jSP文件中的按钮来运行server时出现问题

如果给定层次 struct 级别,如何从其预序穿越构造n元树

空手道比赛条件

同时运行JUnit测试和Selenium/Cucumber测试时出现问题

Java WireMock定义存根在Cucumber并行执行的多线程测试中失败

如何转换Tue Feb 27 2024 16:35:30 GMT +0800 String至ZonedDateTime类型""

@ IdClass with @ Inheritance(策略= InheritanceType. SINGLE_TABLE)

存根基类的受保护方法

呈现文本和四舍五入矩形时出现的JavaFX窗格白色瑕疵

Java中的死锁及其重入锁和锁

将带有js文件的 bootstrap 程序导入maven项目时出错

在Java中如何从Executors.newFixedThreadPool(MAX_THREAD_COUNT())迁移到虚拟线程

第三方Jar pom.xml

如何在Spring Java中从数据库列中获取JSON中的具体数据

如何在Application.yaml中连接字符串?

使用多个RemoteDatabase对象的一个线程

在macOS上读取文件会导致FileNotFound,即使文件存在(并且具有权限)

try 使用预准备语句占位符获取信息时出现Try-With-Resources错误

如何判断元素计数并在流的中间抛出异常?