2013-06-28 2 views
0

이 두 문장은 동일한 대답으로 평가되지만 은이 문장과 관련된 성능 문제가 있습니까?a = a + b와 a + = b의 차이점은 무엇입니까?

+1

아무 것도 없기 때문에 a + = 1은 컴파일러에서 내부적으로 a = a + 1로 변환됩니다. – kosa

+1

생성 된 코드를보십시오. –

+0

유일한 차이점은 'a'가 평가 될 때 부작용이있는 표현식 인 경우입니다. 전자의 경우에는 후자의 경우에만 두 번 평가됩니다 (부작용이 있음). 예를 들어 단순한 변수 이름이라면 100 % 동일합니다. – Patashu

답변

0

생성 된 코드는 두 코드 모두 동일합니다. 유일한 차이점은 코드의 가독성입니다.

+0

정확히 지적하지 않으면 [여기서는 가장 많이 투표 된 Java 관련 질문 중 하나입니다] (http://stackoverflow.com/questions/8710619/java-operator). – Zong

관련 문제