Operador lógico operador Java SE (23)

Tabla de contenido

Operadores logicos

& 和 &&

| y ||


Operadores logicos

Los operadores lógicos se utilizan para operar con datos booleanos y el resultado sigue siendo un dato booleano .

Operador Cálculo ejemplo resultado
Y versus verdad verdad cierto
verdadero Falso falso
falso verdadero cierto
falso y falso falso
&& Cortocircuito con verdad verdad cierto
verdadero Falso falso
falso verdadero cierto
falso y falso falso
| o verdadero | cierto cierto
verdadero | falso cierto
falso | cierto cierto
false | false falso
|| Cortocircuito o cierto  || cierto cierto
cierto  || falso cierto
falso || cierto cierto
false || false falso
^ XOR verdadero ^ verdadero falso
verdadero ^ falso cierto
falso ^ verdadero cierto
false^false falso
! no- !cierto falso
!falso cierto

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ejercicio:

public class TestOpe11{
	public static void main(String[] args){
		//逻辑与:&   规律:全对为对。
		System.out.println(true&true);     //true
		System.out.println(true&false);    //false
		System.out.println(false&true);    //false
		System.out.println(false&false);   //false
		//短路与:&&  规律:全对为对
		//只要左边表达式是false,右边的表达式不会进行运算,结果为false。
		System.out.println(true&&true);     //true
		System.out.println(true&&false);    //false
		System.out.println(false&&true);    //false
		System.out.println(false&&false);   //false
		
		//逻辑或:|   规律:任一为true,结果为true。
		System.out.println(true|true);     //true
		System.out.println(true|false);    //true
		System.out.println(false|true);    //true
		System.out.println(false|false);   //false
		//短路或:||  规律:任一为true,结果为true。
		//只要左边表达式是true,右边的表达式不会进行运算,结果为true。
		System.out.println(true||true);     //true
		System.out.println(true||false);    //true
		System.out.println(false||true);    //true
		System.out.println(false||false);   //false
		
		//逻辑异或:^  规律:运算符两边的布尔值不同时,结果为true。
		System.out.println(true^true);     //false
		System.out.println(true^false);    //true
		System.out.println(false^true);    //true
		System.out.println(false^false);   //false
		
		//逻辑非:!    规律:相反结果。
		System.out.println(!true);       //false
        System.out.println(!false);      //true
	}
}

 resultado de la operación:

  

  • & 和 &&

       El mismo punto : operador & && expresada y operación , si y sólo si el operando en ambos lados del operador son verdaderas , su resultado que es verdad , de lo contrario el resultado es falso.

       Diferencia : Al usar & para calcular, no importa si el lado izquierdo es verdadero o falso, se calculará la expresión de la derecha .

                     Si se utiliza && para el cálculo, cuando el lado izquierdo es falso , la expresión de la derecha no se calculará , por lo que && se denomina cortocircuito y.

Ejercicio: 

public class TestOpe12{
	public static void main(String[] args){
		//左边为false
		int a=8;
		System.out.println((5>7)&(a++==2));   //false
		System.out.println("a="+a);       //i=9
		
		int b=8;
		System.out.println((5>7)&&(b++==2));   //false
		System.out.println("b="+b);       //左边表达式为flase,右边表达式不进行运输算 i=8
		
		//左边为true
		int m=8;
		System.out.println((5<7)&(m++==2));   //false
		System.out.println("m="+m);       //i=9
		
		int n=8;
		System.out.println((5<7)&&(n++==2));   //false
		System.out.println("n="+n);       //i=9
		
	}
}

  resultado de la operación:

  

  • | y ||

       El mismo punto : Operador | || y expresó u operación , y si el operando en ambos lados de los operadores a ambos lados del valor es cierto , su resultado que es cierto , cuando el valor de los dos lados son fals tiempo E, el resultado es falso .

       Diferencia : cuando se utiliza | para el cálculo, la expresión de la derecha se calculará independientemente de si el lado izquierdo es verdadero o falso .

                     Si usa || para el cálculo, cuando el lado izquierdo es verdadero , la expresión de la derecha no se calculará , por lo que || se llama cortocircuito o.

Supongo que te gusta

Origin blog.csdn.net/wqh101121/article/details/112560587
Recomendado
Clasificación