본문 바로가기

개발/Java

자바에서 ArrayList를 배열 array로 변환하기

출처:자바에서 ArrayList를 배열 array로 변환하기|작성자 네오 에이치
자바에서 ArrayList를 배열 array로 변환하기  웹프로그래밍 팁 

2011/06/09 18:11

복사http://blog.naver.com/fromyongsik/40131207923

전용뷰어 보기

ArrayList에 toArray()라는 메소드가 있다. 두개로 오버로딩이 되어 있는데, toArray(T[] a) 메소드에는 반드시 new로 배열 객체를 생성한 뒤 그 참조변수를 넘겨주어야 한다. 반환값을 대입할 필요는 없다. 다른 toArray()  메소드는 반환된 Object 배열의 원소를 일일이 형변환(캐스팅)하여 사용하거나, 새로운 배열의 원소에 대입하여 사용하면 된다.

 

Object[]toArray () 
          리스트내의 모든 요소를 적절한 순서 (최초의 요소로부터 마지막 요소에)로 포함하고 있는 배열을 돌려줍니다.
<T> T[]
toArray (T[] a) 
          리스트내의 모든 요소를 적절한 순서 (최초의 요소로부터 마지막 요소에)로 포함하고 있는 배열을 돌려줍니다.

 

import java.util.*;

public class ArraylistTest 
{
 /**
  * @param args
  */
 public static void main(String[] args) 
 {
  // TODO Auto-generated method stub
  ArrayList<String> tmpGroupList = new ArrayList<String>();
  tmpGroupList.add("A");
  tmpGroupList.add("B");
  tmpGroupList.add("C");
  tmpGroupList.add("D");
  
  String[] groupList = new String[tmpGroupList.size()]; 
  tmpGroupList.toArray(groupList);
  
  for (String group : groupList)
  {
   System.out.println(group);
  }
  
  String[] groupList2 = new String[tmpGroupList.size()];
  Object[] ar = tmpGroupList.toArray();
  
  for (int idx=0; idx<groupList2.length; idx++)
   groupList2[idx] = (String) ar[idx];
  
  for (String group2 : groupList2)
  {
   System.out.println(group2);
  }
 }
}