逻辑、三元运算符

 1 /*
 2 与(并且)    &&    全都是true,才是true;否则就是false
 3 或(或者)    ||    至少一个是true,就是true;全都是false,才是false
 4 非(取反)    !    本来是true,变成false;本来是false,变成true
 5 
 6 与“&&”,或“||”,具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。
 7 
 8 注意事项:
 9 1. 逻辑运算符只能用于boolean值。
10 2. 与、或需要左右各自有一个boolean值,但是取反只要有唯一的一个boolean值即可。
11 3. 与、或两种运算符,如果有多个条件,可以连续写。
12 两个条件:条件A && 条件B
13 多个条件:条件A && 条件B && 条件C
14 
15 TIPS:
16 对于1 < x < 3的情况,应该拆成两个部分,然后使用与运算符连接起来:
17 int x = 2;
18 1 < x && x < 3
19 */
20 public class Demo09Logic {
21     public static void main(String[] args) {
22         System.out.println(true && false); // false
23         // true && true --> true
24         System.out.println(3 < 4 && 10 > 5); // true
25         System.out.println("============");
26         
27         System.out.println(true || false); // true
28         System.out.println(true || true); // true
29         System.out.println(false || false); // false
30         System.out.println("============");
31         
32         System.out.println(true); // true
33         System.out.println(!true); // false    
34         System.out.println("============");
35         
36         int a = 10;
37         // false && ...
38         System.out.println(3 > 4 && ++a < 100); // false
39         System.out.println(a); // 10
40         System.out.println("============");
41         
42         int b = 20;
43         // true || ...
44         System.out.println(3 < 4 || ++b < 100); // true
45         System.out.println(b); // 20
46     }
47 }
 1 /*
 2 一元运算符:只需要一个数据就可以进行操作的运算符。例如:取反!、自增++、自减--
 3 二元运算符:需要两个数据才可以进行操作的运算符。例如:加法+、赋值=
 4 三元运算符:需要三个数据才可以进行操作的运算符。
 5 
 6 格式:
 7 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
 8 
 9 流程:
10 首先判断条件是否成立:
11     如果成立为true,那么将表达式A的值赋值给左侧的变量;
12     如果不成立为false,那么将表达式B的值赋值给左侧的变量;
13 二者选其一。
14 
15 注意事项:
16 1. 必须同时保证表达式A和表达式B都符合左侧数据类型的要求。
17 2. 三元运算符的结果必须被使用。要么在打印语句中,要么左边有变量,不能只有语句。
18 */
19 public class Demo10Operator {
20     public static void main(String[] args) {
21         int a = 10;
22         int b = 20;
23         
24         // 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
25         // 判断a > b是否成立,如果成立将a的值赋值给max;如果不成立将b的值赋值给max。二者选其一
26         int max = a > b ? a : b; // 最大值的变量
27         System.out.println("最大值:" + max); // 20
28         
29         // int result = 3 > 4 ? 2.5 : 10; // 错误写法!
30         
31         System.out.println(a > b ? a : b); // 正确写法!
32         
33         // a > b ? a : b; // 错误写法!
34     }
35 }

 

posted @ 2020-09-23 09:05  Oooooooa  阅读(178)  评论(0)    收藏  举报