2017-02-06 7 views
0

나는 b1 |= b2b1 = b1 | b2에 해당하는 바로 가기임을 읽었습니다. 제 질문은 실제로 두 가지입니다 :복합 비교 연산자의 핵심은 무엇입니까?

"="비교 연산자가 아닌 할당 연산자가 아닌가요? 그렇다면이 문맥에서 무엇을합니까?

여기에 비교 연산자가 있습니까? 변수를 자체와 비교해야하는 경우 (예 : b1 = b1)?

(.. 나는이 아마 물어 초보자 - 동부 표준시 newb 질문 실현,하지만 난 단지 bash는 스크립트와 프로그래밍없이 학력을 작성하는 비공식적 인 경험을 가지고 친절)

참고 :이입니다 여기에있는 질문과 관련하여 : Shortcut "or-assignment" (|=) operator in Java

+1

'| ='는 복합 비교 연산자가 아닙니다. –

+3

복합 비교 연산자는 없으며 복합 할당 연산자 만 있습니다. – Eran

+0

b1 또는 b2가 참이면 b1이 참이됩니다. – NenTenEn

답변

1

Java에는 많은 연산자가 있습니다. 그러나 '복합 비교 연산자'는 그 중 하나가 아닙니다. 'Head first Java'와 같은 좋은 책에서 Java 기초를 읽어야합니다.

이 질문에 대한 답변을 보려면 b1 |= b2이 복합체 할당입니다.

  1. =는 LHS 오퍼랜드 즉 b1-b1|b2의 결과를 할당한다.
  2. 비교가 아닌 assignment 연산자이므로 이제 b1 |= b1의 결과는 b1 = b1|b1과 같을 것입니다.

HTH (여기 | 참고 조건부 연산자. |||과는 다른 의미를 가지고있는 논리 ||OR 둘 사이 번호 없음).

+0

설명해 주셔서 감사합니다. 'b1 = b1 | b1'보다는'b1 = b1 | b2'라고 쓰고 싶습니까? – NenTenEn

+0

두 변수 모두에 대해 동일한 변수가 사용되었다는 의심이 들었던 두 번째 질문에 대한 응답으로'b1 = b1 | b1'을 의미했습니다. – madcap