반응형
! =와 =!의 차이점은 무엇입니까? 자바?
이 질문에 이미 답변이 있습니다.
- 이게 뭐야 =! 운영자? 13 답변
모의 OCJP 질문을 살펴보고 있었습니다 . 정말 당혹스러운 구문을 발견했습니다. 여기있어:
class OddStuff {
public static void main(String[] args) {
boolean b = false;
System.out.println((b != b));// False
System.out.println((b =! b));// True
}
}
출력이 !=와 사이에서 변경되는 이유는 무엇 =!입니까?
문제는 혼란스러운 간격을 가지고 노는 것입니다.
b != b일반적인 !=(같지 않음) 비교입니다.
반면에 :
b =! b다음과 같이 b = !b구문 분석되는 것이 더 좋습니다 .
b = (!b)
따라서 두 연산자입니다.
- 먼저 반전
b. - 그런 다음에 다시 할당합니다
b.
할당 연산자는 할당 된 값을 반환합니다. 따라서 (b =! b)인쇄 한 내용이 참으로 평가됩니다.
b != b의미 ! (b == b): b == b.
b =! b실제로 b = !b는 할당입니다. b의 가치를 토글하고 있습니다. 할당은 표현식의 값으로 평가되므로 값이 !b변경됨과 함께 다음으로 평가됩니다 b.
b=!b과제입니다. 그것은 할당 b에 !b되고, 얻어진 값을 평가하여 표현 true.
b =! 비
당신은 할당을하고 있고, 당신은 B가! B의 값을 가져야한다고 말하는 것입니다.
b! = b
B가 b와 다른지 묻습니다.
참조 URL : https://stackoverflow.com/questions/8825840/what-is-the-difference-between-and-in-java
반응형
'programing tip' 카테고리의 다른 글
| ItemsControl의 항목 사이에 구분 기호를 추가하는 방법 (0) | 2020.12.29 |
|---|---|
| strtotime 및 date를 사용하여 오늘을 기준으로 이전 월과 연도를 얻는 방법은 무엇입니까? (0) | 2020.12.29 |
| bash 별칭에서 힘내 자동 완성? (0) | 2020.12.29 |
| adb remount 권한이 거부되었지만 셸에서 슈퍼 사용자에 액세스 할 수 있음 — android (0) | 2020.12.29 |
| Ubuntu에 특정 버전의 Node를 설치하는 방법은 무엇입니까? (0) | 2020.12.29 |