【问题标题】:How to create checked Set with one (or more elements) in simple way? [duplicate]如何以简单的方式创建带有一个(或多个元素)的选中 Set? [复制]
【发布时间】:2019-04-25 22:25:23
【问题描述】:

如何使用一个(或多个元素)创建选中的 Set

我有一些 A 类型的对象,我想用所有这些对象创建选中的 Set

A element1; //not null
A element2; //not null; optional

我的解决方案:

Set<A> s = new HashSet<>(1);
a.add(element1);
a.add(element2); //optional

问:是否有任何标准的 util 类可以简单地创建它?

类似

   List<A> l = java.util.Arrays.asList(element1);
   List<A> l = java.util.Arrays.asList(element1, element2); // optional

但对于Set

【问题讨论】:

    标签: java set


    【解决方案1】:
    Set<A> s = new HashSet<>(Arrays.asList(element1, element2));
    

    【讨论】:

      【解决方案2】:

      在 JDK-8 中:

      Stream.of(element1, element2).collect(toSet());
      

      或保证返回的集合类型:

      Stream.of(element1, element2).collect(toCollection(HashSet::new));
      

      如果还没有在 JDK8 上,那么最好的选择可能是:

      new HashSet<>(Arrays.asList(element1, element2));
      

      【讨论】:

        猜你喜欢
        • 2022-11-05
        • 2012-02-11
        • 2011-07-19
        • 1970-01-01
        • 2021-12-12
        • 1970-01-01
        • 2013-03-28
        • 2013-02-17
        • 1970-01-01
        相关资源
        最近更新 更多