2017-12-21 53 views
-2

내 Java 교과서에서 체크 포인트 질문 묻습니다 : x와 y는 int 유형이라고 가정합니다. 다음 중 합법적 인 Java 표현식은 무엇입니까? 그들 모두가 첫 번째를 제외하고 나에게 의미를x와 y는 int 유형이라고 가정합니다. 다음 중 합법적 인 Java 표현식은 무엇입니까?

x > y > 0 is incorrect 
x = y && y is incorrect 
x /= y is correct 
x or y is incorrect 
x and y is incorrect 
(x != 0) || (x = 0) is incorrect on x = 0 

: 대답

x > y > 0 
x = y && y 
x /= y 
x or y 
x and y 
(x != 0) || (x = 0) 

. x> y> 0이 잘못된 이유는 무엇입니까? x = 3 및 y = 2 (둘 다 정수임)가 아닌 표현식을 사용합니까?

+3

하지 * 사실 * 표현 : 당신이 그 동작을 달성하고자하는 경우에, 당신은 명시 적으로 논리적 && 연산자를 사용해야합니다. Java에서는 정수를 부울로 비교할 수 없습니다. – Ryan

+0

'x> y'의 결과는'boolean'입니다. –

+2

'x> y'는 부울을 만듭니다. 그래서'x> y> z'는'some boolean> z'입니다. 'boolean> int'는 Java에서 합법적 인 표현식을 생성하지 않습니다. 당신이 그것을 믿지 않는다면 시도하십시오. – khelwood

답변

2

비교 연산자를 Java에서와 같이 연결할 수 없습니다 (예 : Python에서 수행 할 수 있음). 그것은 단지 유효한 구문이 아닙니다. 그것은 * 법률 * 표현에 대해 묻는 데요

x > y && y > 0