java10

三元运算符
格式:逻辑表达式 ? 表达式1:表达式2
表达式可以是字符串,表达式,也可以是具体的值。
得出的是数值型叫算术表达式
得出的是boolean叫逻辑表达式
逻辑表达式的值是true,则返回表达式1值,
逻辑表达式的值是false,则返回表达式2值,
eg:

int a = 2+3;
int b = 4;
System.out.println(a>2?a+2:a-2);
【7】
System.out.println(a<3?4:2)
【2】

eg:求两个数的最大值
int max = a<b?b:a;
System.out.println(max);
结果要不直接打印出来,要不用数值类型和标识符接收一下
求一个数是偶数还是奇数

String c = a%2==0?"偶数":"奇数";
System.out.println(c);
【奇数】

逻辑运算符
所有逻辑运算符的结果都为布尔类型
与(&) 或(|) 非( !) 异或(^) 短路与(&&) 短路或(||)

		1.与
		System.out.println(true&true);//t
		System.out.println(true&false);//f
		System.out.println(false&false);//f
		System.out.println("***************");
【true
false
false
************】

		//2.或
		System.out.println(true|true);//t
		System.out.println(true|false);//t
		System.out.println(false|false);//f
		System.out.println("*************");
【true
true
false
************】

		//3.非
		System.out.println(!true);//f
		System.out.println("****************");
【false
************】

		//4.异或
		System.out.println(true^true);//f
		System.out.println(true^false);//t
		System.out.println("*************");
【false
true
************】

异或中,相同为0(false),不同为1(true)
		//5.短路与

		int b = 4;
		System.out.println(b>4 && b==1/0);、                                                 //int a =5;
		System.out.println("***************");
【false
************】                                                                                                         //System.out.println(a>7&1==1/0); 【error】

		//6.短路或
		System.out.println(1==1||1==1/0);
【true】

短路与中,前面是true时,才会去执行后面的代码。
路或中,前面是false时,才会去执行后面的代码。

原文地址:https://www.cnblogs.com/-zero/p/10217565.html