Java基础 - 运算符

运算符用于对常量和变量进行操作的符号

表达式用运算符连接起来的符号符合java语法的式子。不同的运算符连接的表达式是不同类型的表达式

 

运算符分类:

  算术运算符 

  赋值运算符

  关系运算符

  逻辑运算符

  三元运算符

 

算术运算符  

 1 public class Main {
 2 
 3     public static void main(String[] args) {
 4 
 5         int a = 3;
 6         int b = 4;
 7         System.out.println(a + b);  // 相加 输出7
 8         System.out.println(a - b);  // 相减 输出-1
 9         System.out.println(a * b);  // 相乘 输出12
10         System.out.println(a / b);  // 相除 输出0
11         System.out.println(a % b);  // 余数/取模 输出3
12 
13         // 两个整数相除,如果希望得到小数,则需要有小数参与
14         System.out.println(3.0 / 4);    // 输出0.75
15         System.out.println(3 / 4.0);    // 输出0.75
16 
17         System.out.println("====================");
18 
19         // 字符参与加法运算,其实是拿字符在计算机中存储的数据值来参与运算
20         // 'A' 65
21         // 'a' 97
22         // '0' 48
23         char c = 'A';
24         System.out.println(a + c);  // 输出68
25 
26         // 字符串参与加法运算,其实做的不是加法运算,而是字符串的拼接
27         System.out.println("hello" + a);        // 输出hello3
28         System.out.println("hello" + a + b);    // 输出hello34
29         System.out.println(a + b + "hello");    // 输出7hello
30 
31         System.out.println("=========================");
32         // ++, -- 自增自减,用于对变量加1或者键1
33         System.out.println("a:" + a);   // a:3
34         a++;
35         System.out.println("a:" + a);   // 输出 a:4
36 
37         int x = 10;
38         int y = x;
39         System.out.println("x -->" + x);    // x -->10
40         System.out.println("y -->" + y);    // y -->10
41 
42         x = 10;
43         y = x++;    // 先赋值,后运算
44         System.out.println("x -->" + x);    // x -->11
45         System.out.println("y -->" + y);    // y -->10
46 
47         x = 10;
48         y = ++x;    // 先运算,后赋值
49         System.out.println("x -->" + x);    // x -->11
50         System.out.println("y -->" + y);    // y -->11
51 
52 
53     }
54 }

赋值运算符

 1 /*
 2  * 赋值运算符:
 3  *      基本的赋值运算符: =
 4  *      扩展的赋值运算符: +=, -=, *=, /=, ...
 5  *
 6  * */
 7 
 8 public class Main {
 9     public static void main(String[] args) {
10         // = 的操作 定义变量
11         int a = 10;     // 把10赋值给int类型的变量a
12 
13         // += 的操作 -=, *=, /= 与 += 类似
14         // 拿 += 的左边和右边的数据做+,然后把结果赋值给左边
15         a += 20;
16         System.out.println("a:" + a);
17 
18         // 注意: 扩展的运算符隐含了强制类型转换
19         short s = 1;
20         s += 1;     // 等同于 s = (short)(s + 1)
21         System.out.println("s:" + s);
22 
23     }
24 }

 

关系运算符

 1 package com.demo1;
 2 
 3 /*
 4 * 关系运算符:
 5 *       ==, !=, >, >=, <, <=
 6 *       关系运算符的结果是boolean类型
 7 * */
 8 public class demo {
 9     public static void main(String[] args) {
10         // 定义变量
11         int a = 10;
12         int b = 20;
13         int c = 10;
14 
15         // ==
16         System.out.println(a == b);     // false
17         System.out.println(a == c);     // true
18         System.out.println("=============");
19 
20         // !=
21         System.out.println(a != b);     // true
22         System.out.println(a != c);     // false
23         System.out.println("=============");
24 
25         // >
26         System.out.println(a > b);      // false
27         System.out.println(a > c);      // false
28         System.out.println("=============");
29 
30         // >=
31         System.out.println(a >= b);      // false
32         System.out.println(a >= c);      // true
33         System.out.println("=============");
34 
35         // <
36         System.out.println(a < b);      // true
37         System.out.println(a < c);      // false
38         System.out.println("=============");
39 
40         // >=
41         System.out.println(a <= b);      // true
42         System.out.println(a <= c);      // true
43         System.out.println("=============");
44 
45     }
46 }

 

逻辑运算符

 1 package com.demo2;
 2 
 3 
 4 /*
 5 * 逻辑运算符:用于连接关系表达式
 6 * &  逻辑与    有false则false
 7 * |  逻辑或    有true则true
 8 * ^  逻辑异或   相同则false,不同则true
 9 * !  逻辑非    true则false,false则true
10 *
11 * &&    双与和单与的结果一样,不同之处在于前者为false,后者不执行
12 * ||    双或和单或的结果一样,不同之处在于前者为true,后者不执行
13 *
14 * */
15 
16 public class demo {
17 
18     public static void main(String[] args) {
19         // 定义变量
20         int a = 3;
21         int b = 4;
22         int c = 5;
23 
24         // &
25         System.out.println((a>b) & (a>c));  // false & false
26         System.out.println((a<b) & (a>c));  // true & false
27         System.out.println((a>b) & (a<c));  // false & true
28         System.out.println((a<b) & (a<c));  // true & true
29 
30         System.out.println("================");
31         // |
32         System.out.println((a>b) | (a>c));  // false | false
33         System.out.println((a<b) | (a>c));  // true | false
34         System.out.println((a>b) | (a<c));  // false | true
35         System.out.println((a<b) | (a<c));  // true | true
36 
37         System.out.println("================");
38         // ^
39         System.out.println((a>b) ^ (a>c));  // false ^ false
40         System.out.println((a<b) ^ (a>c));  // true ^ false
41         System.out.println((a>b) ^ (a<c));  // false ^ true
42         System.out.println((a<b) ^ (a<c));  // true ^ true
43 
44         System.out.println("================");
45         // !
46         System.out.println(!(a>b));  // false
47         System.out.println(!(a<b));  // true
48         System.out.println(!(a>b));  // false
49         System.out.println(!(a<b));  // true
50         System.out.println("================");
51 
52         // &&
53         System.out.println((a>b) && (a>c));  // false && false
54         System.out.println((a<b) && (a>c));  // true && false
55         System.out.println((a>b) && (a<c));  // false && true
56         System.out.println((a<b) && (a<c));  // true && true
57 
58         System.out.println("================");
59         // ||
60         System.out.println((a>b) || (a>c));  // false || false
61         System.out.println((a<b) || (a>c));  // true || false
62         System.out.println((a>b) || (a<c));  // false || true
63         System.out.println((a<b) || (a<c));  // true || true
64     }
65 }

 

 

三元运算符

posted on 2018-11-05 19:55  奋斗中的码农  阅读(188)  评论(0编辑  收藏  举报

导航