반응형
Notice
Link
목록자바언어 (1)
스택큐힙리스트
자바의 +=, -=, *=, /= 복합 할당 연산자는 왜 캐스팅이 필요하지 않을까요?
오늘까지는, 예를 들어: i += j;그것은 그냥 ...의 축약형이었습니다. i = i + j;하지만 우리가 이렇게 시도한다면: int i = 5;long j = 8;그러면 i = i + j; 는 컴파일되지 않지만 i += j; 는 잘 컴파일됩니다.이게 실제로 무슨 의미인 건지, i += j; 이런 건 i = (type of i) (i + j)와 같은 축약형이라는 건가요?답변 1이 질문에도 항상 그렇듯이 JLS가 답을 제공합니다. 이 경우에는 §15.26.2 Compound Assignment Operators입니다. 추출 문구 :형식이 E1 op= E2 인 복합 할당 표현식은 E1 = (T)((E1) op (E2)) 와 동일하며, 여기에서 E1 의 유형은 #$*!#^#$& 입니다. 다만 E1 는 한 번..
카테고리 없음
2023. 3. 12. 10:25