set集合去重效果没达到

        Set<ProductVO> authorityList = Stream.of(childrenList, parentList).flatMap(Collection::stream).collect(Collectors.toSet());

两个集合合并为set,为什么里面的元素没有去重?

equals和hashcode也重写过了

首先你写的代码没问题。
如果像你说的去重效果没达到,那你需要详细说下你想要的效果是怎样的,然后你的equals和hashcode是怎么重写的

set本身可以保证里面不会有重复的数据
仔细看你里面到底存了个什么
如果你存的不是值类型,而是引用类型,比如数组
那么即使数组里面的值相同,对于set而言,它们也是两个不同的数组,不会被去重的

因为你的equals和hash不能实现去重

https://blog.csdn.net/jg_csdn/article/details/121921596?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165206701916781683919476%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165206701916781683919476&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-121921596-null-null.nonecase&utm_term=stream&spm=1018.2226.3001.4450