Java集合列表

时间:2020-02-23 14:34:57  来源:igfitidea点击:

在本教程中,我们将看到如何将Java集合转换为列表。

有很多方法可以做到,我们将在这里看到两种方式。

使用arraylist构造函数

ArrayList(Collection<? extends E> c)

上面的ArrayList的构造函数创建具有指定集合元素的列表,按照集合的迭代器返回的顺序。

使用Java 8流

我们可以使用Java 8的流,并将任何集合转换为列表。

List<Integer> intValuesJava8 = values.stream().collect(Collectors.toList());

将Java集合转换为列表。

package org.igi.theitroad;
 
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
 
public class ConvertCollectionToListMain {
 
	public static void main(String[] args) {
		
		//HashSet
	      Collection<String> s1 = new HashSet<>(); 
	      s1.add("John");
	      s1.add("Martin");
	      s1.add("Mary");
	      System.out.println("Set Elements:");
	      System.out.println(s1);
	      
	      //Converting Collection to list
	      List<String> list=new ArrayList<String>(s1);
	      System.out.println("List elements: ");
	      System.out.println(list);
	      
	      //HashMap
	      Map<String,Integer> m1 = new HashMap<>(); 
	      m1.put("John", 18);
	      m1.put("Martin", 23);
	      m1.put("Mary",34);
	      m1.put("Tom", 32);
	      System.out.println("===================");
	      
	      Collection<Integer> values = m1.values();
	      
	      //Converting Collection to list
	      List<Integer> intValues = new ArrayList<>(values);
	      
	      System.out.println("Values of Map are: ");
	      System.out.println(intValues);
	      
	      
	      System.out.println("===================");
	      System.out.println("Using Java 8");
	      
	      //Converting Collection to list using java 8
	      List<String> listJava8= s1.stream().collect(Collectors.toList());
	      System.out.println("List elements: ");
	      System.out.println(listJava8);
	      
	      
	      //Converting Collection to list using java 8
	      List<Integer> intValuesJava8 = values.stream().collect(Collectors.toList());
	      System.out.println("Values of Map are: ");
	      System.out.println(intValuesJava8);
	}
 
}