java 去重元素,元素是一组没有顺序的字符

1、需求描述:

有一个大集合,大集合中的元素是是一个小集合,要求在大集合中的小集合不能重复,小集合中的元素没有顺序。

例如有个大集合 [[a,b],[b,c]] 向这个元素中添加元素[b,a]就是添加重复元素因为与[a,b]是一样的都包含a,b 添加[c,d]就可以。

2、实现代码

复制代码
public static void main(String[] args) {

        List<Collection<String>> listOfCollections = new ArrayList<>();

        Set<String> set = new HashSet<>();
        set.add("a");
        set.add("b");
        listOfCollections.add(set);
        System.out.println("集合起始元素:"+listOfCollections);

        Set<String> set1 = new HashSet<>();
        set1.add("b");
        set1.add("a");

        //判断是否重复
        for (Collection<String> col : listOfCollections) {
            //没有重放入
            if (!col.equals(set1)) {
                listOfCollections.add(set1);
                break;
            }else{
                System.out.println("1-这组元素已经有了!");
            }
        }
        System.out.println("集合添加set1元素:"+listOfCollections);

        Set<String> set2 = new HashSet<>();
        set2.add("a");
        set2.add("c");

        //判断是否重复
        for (Collection<String> col : listOfCollections) {
            //没有重放入
            if (!col.equals(set2)) {
                listOfCollections.add(set2);
                break;
            }else{
                System.out.println("2-这组元素已经有了!");
            }
        }
        System.out.println("集合添加set2元素:"+listOfCollections);
    }

3、输出结果

集合起始元素:[[a, b]]

1-这组元素已经有了!

集合添加set1元素:[[a, b]]

集合添加set2元素:[[a, b], [a, c]]

相关推荐
黑云压城After5 分钟前
vue2实现图片自定义裁剪功能(uniapp)
java·前端·javascript
zcl_19912 小时前
记一次ThreadLocal导致的生产事故
java
RoboWizard2 小时前
怎么判断我的电脑是否支持PCIe 5.0 SSD?Kingston FURY Renegade G5
java·spring·智能手机·电脑·金士顿
毕设源码-钟学长2 小时前
【开题答辩全过程】以 儿童游泳预约系统为例,包含答辩的问题和答案
java·eclipse
皮皮林5513 小时前
5种接口频率监控方案实战对比,性能、成本、复杂度全解析!
java
似水流年 光阴已逝3 小时前
从Jar包到K8s上线:全流程拆解+高可用实战
java·kubernetes·jar
YA3333 小时前
java设计模式八、组合模式
java·设计模式·组合模式
一枚码仔3 小时前
SpringBoot启动时执行自定义内容的5种方法
java·spring boot·后端
桦说编程3 小时前
如何在Java中实现支持随机访问的固定窗口队列
java·数据结构·后端
小白黑科技测评3 小时前
2025 年编程工具实测:零基础学习平台适配性全面解析!
java·开发语言·python