2014-02-27 2 views
0

값으로 널 무시 :배열 내가 코드를

for (int i = 0; i < directory.length; i++) { 
    if (directory[i].contains (number)) { 
     if (directory[i+1] == null){ 
      directory[i] = null; 
     } 
     else { 
      for (int k=i; k<directory.length; k++){ 
       System.out.println(directory[k]); 
       System.out.println(directory[k+1]); 
       if (directory[i+1] != null){ 
        directory[k] = directory[k+1]; 
        System.out.println(directory[k]); 
       } 

"(디렉토리 [I + 1] = NULL이!) {경우"내가 사용하고하는 것은 배열 인 내가 생각하는 중요한 비트입니다 다음 요소가 null이 아니고 코드를 찾으면 찾으려고합니다. 그러나 다음 값이 null 인 경우에도 어쨌든 수행합니다. 어떤 제안?

감사합니다.

+0

이것은'i'-'-k' 오자가 있습니다. –

+0

질문을 분명히하지 못해 죄송합니다. 지금 질문을 수정했습니다 :) – user3006216

+4

'i' 루프의 마지막 반복에서 배열 오류가 발생합니다. –

답변

1

루프에서 루프 인덱스를 사용하지 않는 것이 문제입니다. 초기 값 만 반복해서 테스트하고 있습니다.

if (directory[i+1] != null){ 

if (directory[k+1] != null){ 
1

디렉토리의 다음 값이어야합니다 [내가 + 1] 결코 null이 될 것하지 @ "경우 (디렉토리 [I + 1]! = null) { "else 문 앞에 [i + 1] == null이 있는지 확인하기 때문에

내 추측은 반복적으로 작은 입력 오류 일 수 있으므로 [k + 1]?