【问题标题】:Moving data from a HashSet to ArrayList in Java在 Java 中将数据从 HashSet 移动到 ArrayList
【发布时间】:2012-11-17 21:38:16
【问题描述】:

我在 Java 中有以下 Set

Set< Set<String> > SetTemp = new HashSet< Set<String> >();

我想将其数据移动到ArrayList

ArrayList< ArrayList< String > > List = new ArrayList< ArrayList< String > >);

有可能这样做吗?

【问题讨论】:

  • 是的,这是可能的。你试过什么?

标签: java list data-structures arraylist hashset


【解决方案1】:

我们有这些方法可以在 java 中将 hashet 转换为 ararylist

方法一:我们将hashset作为参数传入arraylist/list as的构造函数

Set<String> hs = new HashSet<String>();
hs.add("java");
hs.add("php");
hs.add("html");
List<String> list = new ArrayList<String>(hs);

方法2:迭代Hashset并在列表中逐个添加元素

  for (String str : hs) {
    arraylist.add(str);
 }

方法:使用 arr.addAll() 方法

 With the help of addAll() you can add collection into list

参考:How to Convert HashSet to a List/ArrayList

【讨论】:

    【解决方案2】:

    你可以使用Stream和collector来做到这一点,我希望这是最简单的方法

    listname = setName.stream().collect(Collectors.toList());
    

    【讨论】:

      【解决方案3】:

      你可以使用addAll():

      Set<String> gamesInstalledTemp = new HashSet< Set<String> >();
      List<String> gamesInstalled = new ArrayList<>();
      gamesInstalled.addAll(gamesInstalledTemp);
      

      【讨论】:

        【解决方案4】:

        将数据 HashSet 移动到 ArrayList

        Set<String> userAllSet = new HashSet<String>(usrAllTemp);
        List<String> usrAll = new ArrayList<String>(userAllSet);
        

        这里的usrAllTemp 是一个ArrayList,它有一些值。 同样的方式 usrAll(ArrayList)userAllSet(HashSet) 获取值。

        【讨论】:

          【解决方案5】:

          你只需要循环:

          Set<Set<String>> setTemp = new HashSet<Set<String>> ();
          List<List<String>> list = new ArrayList<List<String>> ();
          for (Set<String> subset : setTemp) {
              list.add(new ArrayList<String> (subset));
          }
          

          注意:您应该以小型大写字母开头变量名以遵循 Java 约定。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2010-10-06
            • 1970-01-01
            • 1970-01-01
            • 2014-12-24
            • 2014-04-08
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多