2013-10-28 1 views
0
private ArrayList<String[]> action = new ArrayList<String[]>(); 

위의 목표는 action을 20 개 공백으로 채우고 String[3]으로 채우는 것입니다. 내가 아는 가장 빠른 방법은 다음과 같습니다.ArrayList <String[]>에 이미 여러 문자열 [1]이 포함되어 있는지 인스턴스화하는 방법은 무엇입니까?

for(int i = 0 ; i < 20 ; ++i) { 
    action.add(new String[3]); 
} 

이 개체를 인스턴스화하는 데 더 효율적인 방법이 있습니까?

+2

새 문자열 [1]? String을 추가해야합니다. –

+0

이게 무슨 뜻인지 모르겠다 – user2763361

+0

@AnkitRustagi 왜? 이것은'String []'의'ArrayList'입니다 –

답변

1

당신은이

String[][] s = new String[20][3]; 
List<String[]> action = new ArrayList<String[]>(Arrays.asList(s)); 

또는 데이터에 new String[1] 적용

String[][] s = new String[20][3]; 
for (int i = 0; i < s.length; i++) { 
    action.add(s[i]);   
} 
0

자바에서 모든 자바 7에 간결하지 않는 폐쇄 문을 필요로 같이 할 수 8 코드는 다음과 같습니다.

List<String[]> collect = IntStream.range(0, 20) 
    .mapToObj(x -> new String[3]) 
    .collect(Collectors.<String[]>toList());