Skip to content

Files

Latest commit

 

History

History
155 lines (112 loc) · 3.5 KB

File metadata and controls

155 lines (112 loc) · 3.5 KB

如何在 java 中将数组转换为ArrayList

原文: https://beginnersbook.com/2013/12/how-to-convert-array-to-arraylist-in-java/

在上一个教程中,我们共享了两个使用示例将ArrayList转换为数组的方法。这里我们分享三种不同的方式将数组转换为ArrayList。基本上我们将String数组转换为String类型的ArrayList

String array[] to ArrayList<String>

方法 1:使用Arrays.asList()进行转换

句法:

ArrayList<T> arraylist = new ArrayList<T>(Arrays.asList(arrayname));

例:

在这个例子中,我们使用Arrays.asList方法将Array转换为ArrayList

import java.util.*;

public class ArrayToArrayList {
     public static void main(String[] args) {

	  /* Array Declaration and initialization*/
	  String citynames[]={"Agra", "Mysore", "Chandigarh", "Bhopal"};

	  /*Array to ArrayList conversion*/
	  ArrayList<String> citylist= new ArrayList<String>(Arrays.asList(citynames));

	  /*Adding new elements to the converted List*/
	  citylist.add("New City2");
	  citylist.add("New City3");

	  /*Final ArrayList content display using for*/
	  for (String str: citylist)
	  {
		System.out.println(str);
       	  }
      }
}

输出:

Agra
Mysore
Chandigarh
Bhopal
New City2
New City3

方法 2:Collections.addAll方法

Collections.addAll方法将所有数组元素添加到指定的集合中。这就是调用Collections.addAll方法的方法。它与Arrays.asList方法的作用相同,但它比它快得多,因此性能方面这是将数组转换为ArrayList的最佳方法。

String array[]={new Item(1), new Item(2), new Item(3), new Item(4)};
ArrayList&lt;T&gt; arraylist = new ArrayList&lt;T&gt;();
Collections.addAll(arraylist, array);

Collections.addAll(arraylist, new Item(1), new Item(2), new Item(3), new Item(4));

实现示例

import java.util.*;

public class Example2 {
	public static void main(String[] args) {

	    /* Array Declaration and initialization*/
	    String array[]={"Hi", "Hello", "Howdy", "Bye"};

	    /*ArrayList declaration*/
	    ArrayList<String> arraylist= new ArrayList<String>();

	    /*Conversion*/
	    Collections.addAll(arraylist, array);

	    /*Adding new elements to the converted List*/
	    arraylist.add("String1");
	    arraylist.add("String2");

	    /*Display array list*/
	    for (String str: arraylist)
	    {
	 	System.out.println(str);
	    }
	}
}

结果:

Hi
Hello
Howdy
Bye
String1
String2

方法 3:手动方式

我们还可以手动将所有数组元素添加到ArrayList中。下面的示例显示了手动转换的逻辑。

package beginnersbook.com;

import java.util.*;

public class Details {
	public static void main(String[] args) {

	    /*ArrayList declaration*/
	    ArrayList<String> arraylist= new ArrayList<String>();

	    /*Initialized Array*/
	    String array[] = {"Text1","Text2","Text3","Text4"};   

	    /*array.length returns the current number of 
	     * elements present in array*/
	    for(int i =0;i<array.length;i++)
            {

	         /* We are adding each array's element to the ArrayList*/
		 arraylist.add(array[i]);
	    }

	    /*ArrayList content*/
	    for(String str: arraylist)
	    {
	         System.out.println(str);
	    }
      }
}

输出:

Text1
Text2
Text3
Text4