추천, 2024

에디터의 선택

&와 &&의 차이점

"&"및 "&&"둘 다 조건문을 평가하는 데 사용되는 연산자입니다. & 연산자는 논리 연산자뿐만 아니라 비트 연산자입니다. && 연산자는 순전히 논리 연산자입니다. &와 && 연산자의 기본 차이점은 & 연산자가 표현식의 양쪽을 평가하는 반면 && 연산자는 표현식의 왼쪽 만 평가하여 최종 결과를 얻는 것입니다. 비교 차트의 도움으로 &와 &&의 다른 차이점을 이해합시다.

비교 차트

비교의 근거&&&
운영자그것은 "비트 연산자"입니다.그것은 "논리 연산자"입니다.
평가표현의 왼쪽과 오른쪽을 모두 평가합니다.그것은 표현의 왼쪽만을 평가합니다.
~에 작용하다"부울 데이터 유형"에서 작동하고 "비트"에서 작동합니다."부울 데이터 유형"에서만 작동합니다.
용도논리적 조건을 확인하고 패리티 비트와 같은 특정 비트를 마스크하는 데 사용됩니다.논리 조건을 검사 할 때만 사용됩니다.

&의 정의 (비트 AND)

이 '&'연산자는 논리 연산자 (&)와 비트 연산자로 사용됩니다. 이진 데이터뿐 아니라 부울에서도 작동합니다. & 연산자가 논리적 & 연산자로 사용될 때, 두 표현식의 표현이 모두 참이면 "참", 그렇지 않으면 "거짓"을 반환합니다. 컴파일러는 표현식의 양쪽 측면을 평가할 수 있습니다. 즉, 표현식의 왼쪽이 거짓이더라도 표현식의 오른쪽을 평가합니다.

우리가 예를 들어 이것을 이해할 수있게 해줍니다.

 int a = 4, b = 5; system.out.println ((a == 6) & (b ++ == 6)); system.out.println ( "b ="+ b); // 출력 false b = 5 

여기에서 표현식의 왼쪽을 계산할 때 (a == 6) 결과는 false가되고 & 연산자는 결과의 오른쪽 표현식 (b ++ == 6)을 계산하면 b의 값이 증가합니다.

'&'가 '비트 연산자'로 사용되면 먼저 두 피연산자를 이진 형식으로 변환 한 다음 & 연산자를 비트별로 사용하여 연산합니다. 연산 후, 얻어진 결과는 2 진수 형태로되어 십진수로 변환됩니다. 피연산자 중 하나의 비트가 0이면 결과는 0입니다. 피연산자의 비트가 모두 1이면 결과 비트는 1입니다. 비트 및 연산자는 논리 및 연산자와 동일한 진리표에 의해 관리됩니다.

& 연산자의 비트 연산을 봅시다.

 int a; a = 3 & 4; // 011 & 100 = 000 system.out.println ( "a ="+ a); // 출력 a = 0 

여기에서 10 진수 값 3과 4는 초기에 이진 형식으로 변환 된 다음 & 비트 연산자가 비트 단위로 & 연산을 수행합니다. 얻은 결과는 2 진수 형식으로되어 있으며, 다시 10 진수 형식으로 변환됩니다.

&& (단락 AND)의 정의

이 && 연산자는 완전히 논리 연산자로 작동합니다. 부울 데이터 유형에서만 작동합니다. 단락 회로 운영자라고도합니다. 표현의 왼쪽 부분 만 검사하기 때문입니다. 표현식의 왼쪽이 false이면 표현식의 오른쪽을 평가하는 데 신경 쓰지 않습니다.

&& 연산자의 작동을 예제로 이해할 수있게합니다.

 int a = 4, b = 5; system.out.println ((a == 6) && (b ++ == 6)); system.out.println ( "b ="+ b); // 출력 false b = 4 

여기서 조건 (a == 6)이 false이면 && 연산자는 결과로 식 (b ++ == 6)을 계산하지 않으므로 b의 값은 증가하지 않습니다.

&와 &&의 주요 차이점

  1. & 연산자는 논리 연산뿐만 아니라 비트 연산에도 사용됩니다. 반면에 && 연산자는 부울 데이터 형식에서만 작동하는 논리 연산자입니다.
  2. & 연산자는 표현식의 양쪽을 평가하여 최종 결과를 얻지 만 && 연산자는 표현식의 왼쪽 만 평가하고 & false를 반환하면 표현식의 오른쪽을 평가하지도 않습니다.

노트 :

부울 데이터 유형을 평가하는 동안 두 연산자는 피연산자가 모두 true 인 경우에만 "true"를 반환하고 그렇지 않으면 "false"를 반환합니다.

결론:

& 및 && 연산자는 둘 다 부울 조건을 평가하는 데 사용되지만, & 연산자는 비트 연산에도 사용됩니다. & 연산자가 사용되는 식의 양쪽을 모두 평가할 필요가있을 때 우리는 && 연산자를 사용할 수 있습니다.

Top