논리연산자  (의미 : 또는)

a | b

a || b


무슨 차이가 있을까?

둘 다 같은 의미이다. 

하지만 (차이점) a|b 는 a, b의 값을 평가한다. 즉, a 가 참이라도 b 를 검사한다. 

a||b 의 경우 a 가 참이면 b를 검사하지 않는다. 즉 b 가 단항연산자(++ ,-- 등) 이 있어 검사할 경우와 그렇지 않을 경우에 결과에 차이가 있다. 



마찬가지로 &, && 에도 비슷하다. 


추가로 

&, |  는 논리연산자로만 사용하는 것이라 아니라 비트연산자로도 사용한다. 

a&b : 비트단위의 논리곱

a|b : 비트단위의 논리합

'WEB > java' 카테고리의 다른 글

String, StringBuffer, StringBuiler 차이  (0) 2017.12.28
[구글링] stack & queue  (0) 2017.12.20
[NOTE] Field, method in static method  (0) 2017.12.19
[생활코딩]제네릭  (0) 2017.12.08
[자바의 정석] Collection Framework  (0) 2017.12.08

+ Recent posts