在 java 中创建一组数组

2022-09-02 23:38:55

我想做这样的事情

Set <String[]> strSet = new HashSet <String[]> ();

有没有一种简单的方法可以在Java中制作一组数组,或者我必须编写自己的实现代码?将对象添加到 Set 使用 equals() 检查对象,这不适用于数组。


答案 1

数组不覆盖 和 ,因此 将仅根据引用相等性来比较它们。请考虑改用 s:equalshashCodeHashSetList

Set<List<String>> strSet = new HashSet<List<String>>();

来自 List.equals 文档:

当且仅当指定的对象也是一个列表时,返回该值,两个列表具有相同的大小,并且两个列表中所有对应的元素对都相等true


答案 2

使用 .您可以根据需要使用 Arrays.asListList.toArray 进行转换。Set<List<String>>