Java语言读取字典之后二次读取

Java语言读取字典之后二次读取,两次读取把不重复的数据忽略,保留重复的数据,怎么实现的

可以使用Java中的Set集合来实现,首先,使用Java中的File类和Scanner类读取字典文件,将数据存储在一个ArrayList中。然后,定义两个Set集合,一个用来存储所有的数据,一个用来存储重复的数据。遍历ArrayList,将每个元素添加到“所有数据”的Set集合中。在添加元素时,判断该元素是否已经存在于该集合中,如果存在,则将元素添加到“重复数据”的Set集合中。最后,遍历“重复数据”的Set集合,输出所有重复的数据。
下面是一个示例代码,可以参考:

import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class Main {
    public static void main(String[] args) throws FileNotFoundException {
        // 读取字典文件
        File file = new File("dictionary.txt");
        Scanner scanner = new Scanner(file);

        // 存储所有的数据的集合
        Set<String> allData = new HashSet<>();

        // 存储重复的数据的集合
        Set<String> duplicateData = new HashSet<>();

        // 将数据添加到集合中
        while (scanner.hasNextLine()) {
            String data = scanner.nextLine();
            // 判断数据是否已经存在于集合中
            if (allData.contains(data)) {
                // 如果已经存在,则将数据添加到“重复数据”集合中
                duplicateData.add(data);
            } else {
                // 如果不存在,则将数据添加到“所有数据”集合中
                allData.add(data);
            }
        }

        // 输出重复的数据
        System.out.println("重复的数据:");
        for (String data : duplicateData) {
            System.out.println(data);
        }
    }
}
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^