📜  在Java中设置为列表

📅  最后修改于: 2022-05-13 01:55:17.272000             🧑  作者: Mango

在Java中设置为列表

给定Java中的一组字符串(HashSet 或 TreeSet),将其转换为字符串列表(ArrayList 或 LinkedList)。

Input : Set hash_Set = new HashSet();
        hash_Set.add("Geeks");
        hash_Set.add("For");
        
Output : ArrayList or Linked List with 
         following content
         {"Geeks", "for"}

Java 中的Java: set 接口存在于Java.util 包中,并扩展了 Collection 接口,它是一个无序的对象集合,其中不能存储重复值。

Java中的 List: List 接口提供了一种存储有序集合的方法。它是 Collection 的子接口。它是可以存储重复值的对象的有序集合。

在Java中将 Set 转换为 List 的方法

有许多方法可以在Java中将 Set 转换为 List。下面列出了其中的一些。

  • 使用集合遍历
  • 使用 Arraylist 或 LinkedList 构造函数
  • 使用 addAll() 方法
  • 在Java中使用流

1. 使用集合遍历

我们只需创建一个列表。我们遍历给定的集合,并将元素一个一个地添加到列表中。

Java
// Java program to demonstrate conversion of
// Set to array using simple traversal
  
import java.util.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        int n = s.size();
        List aList = new ArrayList(n);
        for (String x : s)
            aList.add(x);
  
        System.out.println("Created ArrayList is");
        for (String x : aList)
            System.out.println(x);
  
        // We can create LinkedList same way
    }
}


Java
// Java program to demonstrate conversion of
// Set to list using constructor
  
import java.util.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        // Creating an array list using constructor
        List aList = new ArrayList(s);
  
        System.out.println("Created ArrayList is");
        for (String x : aList)
            System.out.println(x);
  
        System.out.println("Created LinkedList is");
        List lList = new LinkedList(s);
        for (String x : lList)
            System.out.println(x);
    }
}


Java
// Java program to demonstrate conversion of
// Set to array using addAll() method.
  
import java.util.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        List aList = new ArrayList();
        aList.addAll(s);
  
        System.out.println("Created ArrayList is");
        for (String x : aList)
            System.out.println(x);
  
        List lList = new LinkedList();
        lList.addAll(s);
  
        System.out.println("Created LinkedList is");
        for (String x : lList)
            System.out.println(x);
    }
}


Java
// Java program to demonstrate conversion of
// Set to list using stream
  
import java.util.*;
import java.util.stream.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        List aList
            = s.stream().collect(Collectors.toList());
  
        for (String x : aList)
            System.out.println(x);
    }
}


输出
Created ArrayList is
Geeks
for

2. 使用 ArrayList 或 LinkedList 构造函数

我们可以使用 ArrayList 或 LinkedList 的构造函数简单地将 Set 转换为 List。

Java

// Java program to demonstrate conversion of
// Set to list using constructor
  
import java.util.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        // Creating an array list using constructor
        List aList = new ArrayList(s);
  
        System.out.println("Created ArrayList is");
        for (String x : aList)
            System.out.println(x);
  
        System.out.println("Created LinkedList is");
        List lList = new LinkedList(s);
        for (String x : lList)
            System.out.println(x);
    }
}
输出
Created ArrayList is
Geeks
for
Created LinkedList is
Geeks
for

3. 使用 addAll() 方法

Java中的 Set 到 List 转换也可以使用Java List 的 addAll() 方法执行。

Java

// Java program to demonstrate conversion of
// Set to array using addAll() method.
  
import java.util.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        List aList = new ArrayList();
        aList.addAll(s);
  
        System.out.println("Created ArrayList is");
        for (String x : aList)
            System.out.println(x);
  
        List lList = new LinkedList();
        lList.addAll(s);
  
        System.out.println("Created LinkedList is");
        for (String x : lList)
            System.out.println(x);
    }
}
输出
Created ArrayList is
Geeks
for
Created LinkedList is
Geeks
for

4. 在Java中使用 Stream

我们使用Java中的流将给定的集合转换为蒸汽,然后将流转换为列表。这仅适用于Java 8 或之后的版本。

Java

// Java program to demonstrate conversion of
// Set to list using stream
  
import java.util.*;
import java.util.stream.*;
  
class Test {
    public static void main(String[] args)
    {
  
        // Creating a hash set of strings
        Set s = new HashSet();
        s.add("Geeks");
        s.add("for");
  
        List aList
            = s.stream().collect(Collectors.toList());
  
        for (String x : aList)
            System.out.println(x);
    }
}
输出
Geeks
for