2014-04-07 5 views
0

숙제 지정의 일환으로 GenericArrayLists 클래스에 메서드를 추가하고 있습니다.Java에서 GenericArrayList 매개 변수 길이 찾기

특히 내 메서드를 통해 전달되는 ArrayList의 길이를 확인해야합니다. arrayINeedToCheck.length를 시도하면 해당 변수 (arrayINeedToCheck)를 정의하지 않았기 때문에 오류가 발생합니다.

나는 어디서 잘못했는지 모르지만 올바른 방향으로 나를 조종 할 수 있기를 바랍니다.

public void addAll(ArrayListGeneric<E> anotherList) 
    { 
    int s = (data.length - size); 
    if (anotherList.length > s) { 
     E[] newData = (E[])(new Object[data.length+anotherList.length]); 
     for (i = 0; i < size; i++) 
      newData[i] = data[i]; 
     data = newData; 
    } 

anotherList.length 문제입니다 :

여기 내 코드입니다. 그것은 그 변수를 정의하지 않았다고 말합니다. 매개 변수이므로 다시 정의해야 할 필요는 없다고 생각합니다. 길이와 내용이 가변적이어서 새로운 빈 배열 목록을 만들 수는 없습니다.

도와주세요 stackoverflow, 당신은 나의 유일한 희망입니다.

+0

배열을 정의한 코드를 표시하고이 메서드에 전달하십시오. – Tyler

+0

정의하지 않았습니다. 이 메소드는 전달 된 ArrayList 만 가져야합니다. anotherList는 단지 자리 표시 자 변수입니다. – FelixTheNub

답변

1

ArrayListGenericjava.util.ArrayList 인 경우 공개 length 필드가 없습니다. 어쩌면 당신은 .size()을 원했을 것입니다.

편집 : 또는 .size, 그 한 줄로 제안됩니다.

+0

그게 효과가! 고마워, 선생. – FelixTheNub