2015-01-23 2 views
-5

int a = 5; 값은 무엇입니까?이 표현식을 계산하는 방법

a=a+ ++a + a; 

17 또는 18입니까? 단계를 표시하십시오.

a=5+6+6=17 
//or 
a=6+6+6=18 // as increment operator has the highest precedence 
+0

Java를 사용하여 실행하려고합니까? 그것은 무엇을 보여줍니까? –

+0

코드를 작성하고 실행하십시오 .... –

+0

17. 그 이유는 모르겠습니다. –

답변

0

JLS에 따르면, 서브 표현식은 왼쪽에서 오른쪽으로 평가됩니다. 그래서 첫 번째 용어는 5로 평가되고 두 ​​번째 것은 6으로 평가되고 세 번째 것은 6으로 평가되고 세 번째 것은 6 이후로 평가되므로 6을 제공합니다. 따라서 합계가 17입니다.

+0

jls의 의미는 무엇입니까? –

+0

@SouhardyaMondal Java 언어 사양. – kraskevich

+0

어디서 구할 수 있습니까? –

관련 문제