2012-01-04 1 views
0

누구든지이 경고를 해결하는 방법을 알고 있습니까?다차원 arraylist에서 확인되지 않은 변환

MyMain.java:12: warning: [unchecked] unchecked conversion 
found : java.util.ArrayList[][] 
required: java.util.ArrayList<java.lang.String>[][] 
      obj[count].someArrayList = new ArrayList[4][4]; 

나는로 변경하려고 :

obj[count].someArrayList = new ArrayList<String>[4][4]; 

그러나 개정안은 다음과 같은 오류로 경고 변경 :

MyMain.java:12: generic array creation 
      obj[count].someArrayList = new ArrayList<String>[4][4]; 

someArrayList의 선언은 다음과 같습니다

public ArrayList<String>[][] someArrayList; 
+0

가능한 중복 : // clickover.com/questions/217065/cannot-create-an-array-of-linkedlists-in-java) –

답변

1

배열을 만들 수 없습니다. 제네릭과 함께 (따라서 오류). 경고 메시지는 ArrayList으로 원시 형식을 사용하는 것을 권장하지 않습니다.

대신, 다음은 다차원 ArrayList가 생성 : 당신은 다음 다차원 ArrayList에 정상적인 작업을 수행 할 수 있습니다

public ArrayList<ArrayList<String>> someArrayList;

.

obj[count].someArrayList = new ArrayList<ArrayList<String>>(); 
ArrayList<String> toAdd = new ArrayList<String>(); 
toAdd.add("test"); 
toAdd.add("test2"); 
obj[count].someArrayList.add(toAdd); 
0

ArrayList의 이렇게하는 다차원 배열을 선언하는 유일한 방법 :

@SuppressWarnings("unchecked") 
ArrayList<String>[][] someArrayList = new ArrayList[4][4]; 
someArrayList[0][0] = new ArrayList<String>(); 
someArrayList[0][1] = new ArrayList<String>(); 
.... 
.... 
(HTTP [자바 LinkedList들을 ...의 배열을 만들 수 없습니다?]을의
관련 문제