2010-05-01 5 views
0

자바에서 배열을 배열로 변환하려면 어떻게해야합니까?조각 C#을 Java로 변환하는 방법?

List<Integer> list = new ArrayList<Integer>(); 
list.add(3); 
list.add(4); 
list.add(5); 
Integer[] arr = (Integer[])list.toArray(new Integer[list.size()]); 

가 이상적으로 당신이 할 싶습니다 :

//code in C# 
List<int> sep = new List<int>(); 
sep.Add(1); 
sep.Add(2); 
sep.Add(3); 

Console.WriteLine("\nCapacity: {0}", sep.Capacity); 
Console.WriteLine(sep.ToArray()); 
+2

의견도 변환해야합니까? :) –

+1

C#에 도전 해보니, 나 자신처럼, 코드 ​​조각을 붙이는 것 외에 코드가 무엇을 설명 할 수 있습니까? –

+0

sep 란 무엇입니까? 목록? –

답변

5

이 작업을 수행 할 수

int[] arr = (int[])list.toArray(new int[list.size()]); 

int로 자동 언 박싱 Integer의 요소가 있지만, 당신은 할 수 '티. 수동으로해야한다 : 또한

int[] arr = new int[list.size()]; 
for (int i=0; i<list.size(); i++) { 
    arr[i] = list.get(i); 
} 
0

시도 Dollar, 등의 작업을 위해 설계된 라이브러리 :

List<Integer> list = ...; // a list, you can initalize it using $(1, 4).toList(); 
int[] ary = $($(list).toArray()).toIntArray(); 

불행하게도 List<Integer>에서 int[]에 직접 convertion이 없습니다. 그 반대의 변환은, 대신, 매우 간단합니다 : 당신이 배열과 컬렉션 사이에 여러 변환을 수행해야하는 경우

int[] ary = ...; 
List<Integer> list = $(ary).toList(); 

는이 라이브러리의 사용이 매우 편리 할 수 ​​있습니다.