강의로 돌아가기
Lee

왜 실행이 안되는건가요?

System.out.println(); 만 넣으면 실행이 안되던데 저만 그런가요?

작성중인 코드―relation_operator
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class OperatorExam {
    public boolean[] calculate(int a, int b) {
        //변수 a와 b는 int형 변수입니다. 각각 어떤 값을 가지고 있는지는 비교해 보기 전에는 모릅니다.
        //a와 b가 주어져 있다고 가정하고 아래 지시에 따라 문제를 풀어 보세요.

        //a가 b보다 큰 지 비교한 결과(true 또는 false)를 c에 저장하세요.
        boolean c = a > b;
        System.out.println(c);
        //a와 b가 같은지 비교한 결과를 d에 저장하세요.
        boolean d = a == b;
        System.out.println(d);
        //a와 b가 다른지 비교한 결과를 e에 저장하세요.
        boolean e = a!= b;
        System.out.println(e);
        //이 아래 코드는 결과 테스트를 위한 코드입니다.
        boolean ret[]={c,d,e};
        return ret;
    System.out.println(ret);
    }

    public static void main(String[]args){
        int a = (int)(Math.random()*10);
        int b = (int)(Math.random()*10);
        new OperatorExam().calculate(a,b);
    }
}
1 개의 답변
제임스1

자바에서는 return 다음에 코드를 넣으면 Unreachable Statements 컴파일 타임 에러를 발생시킵니다.
return을 하면 그 뒤 코드는 실행을 안하기 때문에 에러를 발생시킵니다.

참조:
http://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.21

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.