2013-01-08 4 views
0

간단한 알고리즘을 기반으로 배열 요소를 가져 오려고합니다. 이 예제에서는 인덱스 sum이 두 (모듈 3) 인 요소를 얻었지만 jcreator는 "return statement is missing"을 제공합니다. 어떻게 해결할 수 있을까요?return 문에 배열의 오류가 누락되었습니다.

public class hw1 { 

    public static void main(String[] args) { 

     String[][] RaggedArray = { 
       { "hello", "hi", "i", "nice", "good", "love" }, 
       { "what", "java", "there" }, 
       { "and", "cool", "door", "my" }, 
       { "time", "phone", "homework" } 

     }; 
     System.out.println(hw_one(RaggedArray)); 
    } 

    public static String hw_one(String[][] array) { 
     String result; 

     for (int row = 0; row < array.length; row++) { 
      for (int column = 0; column < array[row].length; column++) { 

       if ((row + column) % 3 == 2) { 
        result = array[row][column]; 
       } 

      } 
     } 
     return result; 
    } 
} 
+4

게시하기 전에 코드의 형식을 지정하십시오. 이것은 읽기가 매우 어렵습니다. – jlordo

+0

y, 나는 그것을 포맷해야 할 필요가있었습니다 ... – SomeJavaGuy

답변

3

나는 그것이 명확하지 않을 때 당신은 오류 "return 문이없는"얻을 수있는 방법이 표시되지 않습니다.

즉, 내 컴파일러는 잠재적으로 초기화되지 않은 변수 (result)를 반환한다고 불평합니다. 다음 수정 문제 :

String result = null; 
       ^^^^^^ 
+0

네 말이 맞아요. 나는 혼란 스럽다. 그리고 나는 당신의 대답을 적용했지만 코드는 오직 하나의 요소만을 제공했습니다. –

+0

null로 문자열을 초기화하지 않습니다. allways nothing (""). 이 NullPointer 발생할 수 없습니다. 유일한 0 excpetion null 또는 수 결과를 확인하고 싶습니다 – SomeJavaGuy

+0

yepp 결국 모든 덕분에 그것을 stackoverflow 가족 :) 덕분에 해결 –

2

당신은 당신이 그것을 사용하기 전에 로컬 varibale result를 초기화해야합니다. null 또는 빈 문자열로 초기화하십시오.

String result = null; or String result = ""; 
관련 문제