우리가 일반적으로 비트 OR(|)보다 논리 OR(||)를 선호하는 이유
프로그래밍에서 논리 OR(||) 및 비트 OR(|) 연산자는 피연산자 중 하나 또는 둘 모두가 true인 경우 둘 다 true로 평가됩니다. 그러나 || 사용을 선호하는 주요 차이점이 있습니다. over |: short-circuiting.
논리 OR 단락의 이점
논리 OR(||)을 사용하는 경우 다음과 같은 경우 평가가 즉시 중지됩니다. 참 피연산자가 발견되었습니다. 이는 필요하지 않은 경우 후속 피연산자의 평가를 방지합니다. 다음을 고려하십시오.
if(true || false) // Passes if(false || false) // Doesn't pass
첫 번째 경우에는 첫 번째 피연산자가 이미 true이므로 두 번째 피연산자를 평가할 필요가 없습니다. 마찬가지로 논리 AND(&&) 및 논리 NOT(!)과 같은 다른 논리 연산자도 사용합니다.
비트 OR 대 논리 OR
비트 OR , 결과에 관계없이 두 피연산자를 모두 평가합니다. 이는 비트 설정 또는 지우기와 같은 비트 조작을 수행하려는 시나리오에서 유리할 수 있습니다. 그러나 부울 연산의 경우 논리 OR의 단락 동작은 상당한 이점을 제공합니다.
if(string != null && string.isEmpty()) // Checks for null before calling isEmpty()
일반적으로 부울 연산의 경우 비트 OR(|)보다 논리 OR(||)를 사용하는 것이 좋습니다. 왜냐하면 단락, 성능 최적화 및 성능 최적화의 이점을 제공하기 때문입니다. null 참조 확인 중 안전 확인
위 내용은 논리 OR(||) 대 비트 OR(|): 언제 단락 회로를 선택해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!