2017-04-07 5 views
-3

클래스 FIBO {오류 : 호환되지 않는 유형 : 예기치 않은 리턴 값

public static void main(String[] args){ 
    int a=0 ,b=1,c=1 ; 
    for(int i=0; i<=4; i++){ 

     c=a+b ; 
     c=a ; 
     a=b; 
    } 
    return c ; 

} 

} 나는이 프로그램을 컴파일하면

내가 오류 얻을 :

incompatible types: unexpected return value

이 무슨 뜻입니까?

+1

이 코드의 형식이 적절하게 들여 쓰기되어 있습니까? 당신은 어때? – khelwood

+2

void 메서드는 아무 것도 반환하지 않습니다. –

답변

0

메인 메서드에서 반환 할 수 없습니다. 그것의 반환 형식이 선택은 특정 사용 사례가

0

당신은 자바 main 메소드에서 값을 반환 할 수 없습니다 작업 할 경우 void

당신이 INT의 반환 형식과 다른 정적 메서드를 만들 수 있습니다,하지만 당신은을 던질 수 main 메소드의 예외.

코드 로직을 별도의 메소드에두고 해당 메소드를 리턴 유형 int로 호출하고 main 메소드에서 리턴 값을 사용하십시오. 아래 코드를보십시오.

public static int fibo() { 
     int a=0 ,b=1,c=1 ; 
     for(int i=0; i<=4; i++) { 
      c=a+b ; 
      c=a ; 
      a=b; 
     } 
     return c ; 
    } 

    public static void main (String a[]) { 
     System.out.println("Fibo : "+fibo()); 
    }