강의로 돌아가기
리버

20이 정상적으로 출력되는데 답이 아니래요...

public class TypeCastingExam {
public static void main(String[] args) {
long longValue = 20;
//이 아래줄에 int형 변수 intValue를 선언하고 longValue에 들어있는 값을 담아보세요.
int intValue = (int)20;
System.out.println(intValue);
}
}

이렇게 입력했고 결과도 20으로 정상적으로 출력되는데 정작 답이 아니래요...어떤것이 잘못되었나요?

2 개의 답변
-

다섯 번째 줄에 int intValue = (int) longValue 라고 하셔야 합니다.
(int)20 은 이미 정수인 20을 정수로 강제 형변환을 한 것이고, 강제 형변환을 할 때는 변수가 저장한 값이 아닌 변수의 이름을 (int) 뒤에 넣어야 합니다.

-

5번줄에 int형 변수에 long형 변수를 담으라고 했으니
int intValue = (int) long변수명 이렇게 형변환 후 long형변수를 넣으면 됩니다.
그러니

int intValue = (int) longValue;

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