2014-12-25 2 views
-5

원래 부울을 반환하는 메서드를 작성하는 방법을 알아 내려고했습니다. 포스트를 읽은 후에, 나는 메인 메소드를 갖는 것과는 별도로, boolean을 반환 할 수있는 두 번째 메소드가 필요하다는 것을 알았고 메인 메소드는 무효가되어야하고 리턴 할 수 없다. 부울을 반환하는 다른 메서드를 작성하는 방법을 알아 냈습니다. 고마워요!자바에서 중첩 된 if 문에서 부울을 반환

public class main { 

public static void main(String args[]) { 
    int[] a = { -6, 2, 4 }; // true -6, 2, 4 
    sum(a); 
} 

public static boolean sum(int[] a) { 
    int x = 0; 
    int len = a.length; 
    boolean check = false; 
    while (x < len) { 
     if (a[x] == 0) { 

      check = true; 

      if (check == true) 
      {System.out.println("break time [email protected]"); 
      break;} 
     } 
     if (a[x] + a[x + 1] + a[x + 2] == 0) { 
      check = true; 
      if (check == true) 
       {break;} 
     } 
     x += 1; 
    } 
    System.out.println("Now we return check"); 
    System.out.println(check); 
    return check; 
} 

} 
+3

당신은 당신이 설명하는 것은 불가능하다 : 거짓말처럼 자신의 방법을 만들 수 있습니다. : D –

+0

@ user26658 어쨌든 main 메소드 –

+0

에서 부울을 반환하고 싶습니까 @Pshemo 클래스 메소드가 실행될 때 main 메소드가 시작되는 메소드가 아니라고 말했어. 유효한 메소드 'main'이 실행을 시작하지 못합니다. –

답변

2

귀하의 주요 방법을 사용하면 부울을 반환로 표시 할 수 없습니다 의미 서명 public static void main(String[] args)을 가지고있다. 나는이 점이 무엇인지 모르지만 boolean을 반환해야하는 경우 부울을 반환하는 다른 메서드를 만들어야합니다.

당신의 방법은 그가 static boolean yourMethodName();이라는 서명이 있어야하고 다른 것들로이 방법을 채워야합니다. 그런 다음 main에서 해당 메서드를 호출 할 수 있습니다. 당신은

public static void main(String []args) 

를 작성하고 당신이 방법은 boolean '당신이 만들어야의를 반환 할 경우는

+0

그래서 클래스 내부에서 서명을 가진 다른 메서드를 만들 수 있습니다 public static void main (String [] args) 그리고이 메서드에서 부울을 반환 할 수 있습니까? – and1can

0

당신과 별도의 방법 main 방법.

main 방법 서명은

public static void main(String[] args) 

또는

static public void main(String[] args) 

수 있지만, 첫 번째를 사용하려고해야합니다.

당신은 당신에게 너무

public static boolean myMethod(); 
{ 
    //some code here 
    return myBooleans; 
} 
0

을 받아 들일 수 없다 부울 값

return t; 
return f; 

을 반환하는

관련 문제