如何在java中创建hashList的ArrayList?

时间:2016-07-05 12:43:14

标签: java arraylist data-structures hashset

我想制作 HashSet的ArrayList 并使用它。

**我的问题:**

我将获得一个整数N作为用户输入 我必须制作一个hashset并在其中加入一些值 然后将其添加到ArrayList,上面的步骤将完成N次 之后我必须检查一个元素是否存在于ArrayList的第一个/第二个/第三个......或第N个哈希集中。

检查用户也给出hashset的值。
我不必将我的ArrayList转换为hashset,我必须将ArrayList转换为hashset。

2 个答案:

答案 0 :(得分:2)

只需创建一个HashSet的ArrayList:

ArrayList<HashSet<Integer>> list = new ArrayList<HashSet<Integer>>();

然后创建HashSets,填充它们,并将它们正常放入ArrayList中。

HashSet<Integer> set = new HashSet<Integer>();
set.add(1);
set.add(whateverIntValue);
list.add(set);

然后,您可以使用list.get(n)获取列表的第n个HashSet。

答案 1 :(得分:1)

List<Set<Integer>> sets = new ArrayList<>();

sets.add(someSet());
sets.add(someSet());
sets.add(someSet());

Set<Integer> someSet() {
    Set<Integer> set = new Hashset<>();
    Collections.addAll(set, 2, 3, 5, 7, 11);
    return set;
}

这区分了变量的规范 /接口,方法参数和结果,以及实现 /实现类。

所以你可以改变实现,比如对一个排序的TreeSet没有痛苦。