java - 如何从列表<String>中删除重复元素?

标签 java arrays collections java-8

列表列表 = ["f1,f2","f2,f3","f4,f5","f2,f1","f5,f4"];

输出列表将是 列表 uniqueList = ["f1,f2","f2,f3","f4,f5"]

最佳答案

我有另一个解决方案。如果您不想准备另一个类来比较 List 内的值。您可以用逗号分隔每个值并对这些数据进行排序。之后,您可以再次将它们转换为字符串集

public static void main(String[] args) {
    List<String> stringList = Arrays.asList("f1,f2", "f2,f3", "f4,f5", "f2,f1", "f5,f4");
    Set<String> result = new HashSet<>();
    for (String s : stringList) {
        String[] elements = s.split(",");
        Arrays.sort(elements);
        result.add(Arrays.toString(elements));
    }

    for (String e : result){
        System.out.println(e);
    }
}

关于java - 如何从列表<String>中删除重复元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56861754/

相关文章:

java - Jersey 客户端 - 变量类型被忽略

java - 如何使 OnNewIntent 在选项卡内工作

java - Jxls单细胞形成/单细胞收集

java - 输出数组中素数的数量

java - 使用 Java 8 Streams API,在调用 Collectors.toSet() 时是否可以依赖 sorted()?

java - 尝试在 IntelliJ IDEA 中创建 jar 可执行文件

java - 如何检查一个词是否好听(Java)

Python - 使用前缀和计算数组中的局部最小值

objective-c - 比较两个数组并将相等的对象放入新数组中

java - 按值对 Map<Key, Value> 进行排序