Java에서 &와 &&의 차이점: 1. && 연산자가 작동할 때 첫 번째 표현식의 값이 false이면 두 번째 표현식은 계산되지 않지만 & 연산자는 첫 번째 표현식에 관심이 없습니다. 표현식은 각 표현식의 값이 true인지 여부에 따라 실행됩니다. 2. & 연산자는 비트 연산자로 사용할 수 있지만 && 연산자는 사용할 수 없습니다.
이 튜토리얼의 운영 환경: windows7 시스템, java8 버전, DELL G3 컴퓨터.
Java에서 &&와 &는 모두 "and"를 나타내는 논리 연산자입니다. 즉, and를 의미합니다. 양쪽의 식이 모두 참이면 모두 참이고, 연산 결과 전체가 참이면 거짓이고, 그렇지 않으면 거짓입니다. 다음 기사에서는 둘 사이의 차이점을 자세히 소개하겠습니다.
&와 &&
&와 &&의 차이점은 둘 다 논리 연산자이지만 &&는 단락 연산자라고도 합니다. 첫 번째 표현식의 값이 false이면 두 번째 표현식은 평가되지 않으며
&는 첫 번째 표현식이 true인지 여부에 관계없이 두 표현식을 모두 실행합니다. 또한 &는 비트 연산자로도 사용할 수 있습니다. &의 양쪽 표현식이 부울 유형이 아닌 경우 &는 비트 연산을 나타냅니다.
&& 연산
int i = 0; if(i == 3 && ++i > 0 ) { } System.out.println("i = " + i);
결과:
i = 0
원인: 두 번째 표현식이 실행되지 않았습니다
& 연산
int i = 0; if(i == 3 & ++i > 0 ) { } System.out.println("i = " + i);
결과:
i = 1
두 번째 표현식이 실행되었습니다
확장된 지식: 논리 연산자
논리 연산자는 다양한 연산의 관계식을 연결하여 복잡한 논리식을 형성하여 프로그램의 식이 참인지, 그 판단 결과가 참인지 거짓인지를 판단합니다.
논리 연산자는 부울 변수에 대해 작동하며 그 결과도 표 1과 같이 부울입니다.
Operator | Usage | Meaning | Explanation | Examples | Result |
---|---|---|---|---|---|
&& | a& &b | ab와의 단락 언제 모두 참이면 계산 결과는 참이고, 그렇지 않으면 거짓입니다. | 2>1&&3<4 | true | |
|| | a||b | 단락 또는 | ab는 모두 거짓이고, 계산 결과는 거짓이고, 그렇지 않으면 참입니다. | 2<1||3>4 | false |
! | !a | logical NOT | a가 참이면 값은 거짓, a가 거짓이면 값은 참 | ! (2>4) | true |
| | a|b | 논리 OR | ab가 모두 false이면 계산 결과는 false, 그렇지 않으면 true | 1>2|3>5 | false |
& | a&b | logical AND | ab가 모두 true이면 계산 결과는 true이고, 그렇지 않으면 false | 1<2&3<5 | true |
|| a가 true이면 b는 계산되지 않습니다(b 값에 관계없이 결과가 true이기 때문입니다)
참고: AND(&&) 및 OR(||)를 단락할 수 있습니다. 가장 최적화된 계산 방법을 사용하여 효율성을 향상시킵니다. 실제 프로그래밍에서는 단락 AND와 단락 OR을 사용하는 것이 우선되어야 합니다.
부울 결과가 있는 변수나 표현식은 논리 연산자를 통해 논리 표현식으로 결합될 수 있습니다. 논리 연산자 &&, || 표 2에 따라 논리 연산을 수행합니다.
a | b | a&&b | a||b | !a |
---|---|---|---|---|
true | true | true | 참 | 거짓 |
false | true | false | true | true |
true | false | false | true | false |
false | false | false | false | true |
逻辑运算符的优先级为:!运算级别最高,&& 运算高于 || 运算。!运算符的优先级高于算术运算符,而 && 和 || 运算则低于关系运算符。结合方向是:逻辑非(单目运算符)具有右结合性,逻辑与和逻辑或(双目运算符)具有左结合性。
下面是一些使用逻辑运算符的示例。
x>0 && x<=100 // 第一行语句 y%4==0 || y%3==0 // 第二行语句 !(x>y) // 第三行语句
其中,第一行语句用于判断 x 的值是否大于 0 且小于或等于 100,只有两个条件同时成立结果才为真(true)。第二行语句用于判断 y 的值是否能被 4 或者 3 整除,只要有一个条件成立,结果就为真(true)。第三行语句先比较 x 和 y,再将比较结果取反,即如果 x 大于 y 成立,则结果为假(false),否则为真(true)。
更多编程相关知识,请访问:编程教学!!
위 내용은 자바에서 &와 &&의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!