大家好,欢迎来到IT知识分享网。
文章目录
前言
本文重点讲解了各种运算符及使用方法
一、运算符是什么?
运算符是在编程中用于完成各种数学和逻辑操作的符号。它们可以用于执行基本算术操作,如加法、减法、乘法和除法,以及比较操作,如等于、大于和小于。此外,运算符还可以用于逻辑操作,如逻辑与、逻辑或和逻辑非。运算符是编程中非常重要的一部分,它们可以帮助我们完成各种复杂的计算和判断。
二、运算符有哪些种类
运算符可以分为算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符等不同类型。不同的运算符具有不同的优先级和结合性,可以通过运算符优先级来确定运算顺序。
1.算数运算符
① +
+具有两种使用方式,一种是作为连接符,用来连接字符串。二是作为数据间的运算符。
- 作为连接符:用来连接字符串或多个字符串的符号。当数据类型不同时,会自动转换成相同的数据类型在转换成字符串类型。
public class Test2 {
public static void main(String[] args) {
char a = 'A'; int b = 0; int c = a + b; System.out.println("aa"+a); } }
- 作为运算符:对数值进行加法运算,包括字符类型,字符类型做加减运算时会自动转化成整型。
public class Test2 {
public static void main(String[] args) {
char a = 'A'; //’A‘的ascll值为65 int b = 3; System.out.println(a + b); } }
② – * /
- 正常的运算符来使用
- 整数相除的得到的仍是整数,比如在程序中10 / 3 的答案是3 而不是3.33。
③%
- 取模运算符,用来取整数相除余数的运算符,例如:10 % 3 = 1。
④++ –
- ++ 是自增运算符,对变量自身进行自增的操作, +1的操作
- – 是自减运算符,对变量自身进行自减的操作, -1的操作
public class operator {
public static void main(String[] args) {
int a = 10; System.out.println(a++); System.out.println(++a); int b = 20; System.out.println(b--); System.out.println(--b); } }
a++是先运行该行代码再进行自增,而++a是先进行自增在进行代码运算。包含强制类型转换,例如a++相当于 a = (a的类型)(a + 1),所以byte类型的变量进行自增自减操作后仍是byte类型。同理,自减运算也是如此。
- 练习
public class operator {
public static void main(String[] args) {
int a = 10; int b = 20; int c = --a + b-- + a++ + --b - ++a; // 9 20 9 18 11 c = 45 System.out.println(c); } }
2.赋值运算符
字面意思,是用于赋值的运算符,赋值运算符有 = += -= *= /=等,
① =
最基础的赋值运算符,作用是给变量赋值,例如 byte a; a = 5;
② += -= *= /=
3.比较运算符
比较运算符有 > < == >= <= != 返回的都是布尔类型的,常用于判断。
① > <
② ==
判断双方变量是否相等,相等就返回结果true,反之就false。
③ >= <=
用于比较大小,但包括相等也返回true;其它一①一样。
④ !=
与 == 相反,!=是不等返回true,相等返回false
public class operator {
public static void main(String[] args) {
int a = 10; int b = 20; int c = 10; int d = 5; //false System.out.println(a > b); //true System.out.println(a < b); //false System.out.println(c > a); //true System.out.println(c >= a); //true System.out.println(c <= a); //true System.out.println(a == c); //false System.out.println(a != c); } }
4.逻辑运算符
①逻辑与 &
用于判断多个语句是否同时为true, 当语句同时为真时,返回true;当有一方为假时或都为假时返回false。
②逻辑或 |
用于判断多个语句是否为true, 当语句有一方为真或都为真时,返回true;都为假时返回false。
③取反 !
用于判断单个语句的真假的反面,当语句为真时返回false,语句为假时返回true。
④异或 ^
用于判断语句真假是否相同,相同返回false,不同返回true。
⑤&& ||
```java public class operator {
public static void main(String[] args) {
int a = 10; int b = 20; int c = 10; int d = 5; //短路效应展示 System.out.println((a<d)&&((++a) > c)); System.out.println((a>d)||((++a) > c)); System.out.println(a); } }
从答案得知,右侧语句的自增语句没有运行。
5.三元运算符
public class operator {
public static void main(String[] args) {
int a = 10; int b = 20; int c = 10; int d = 5; //三元运算符 a = (a > d) ? a : d; System.out.println(a); a = (a < d) ? a : d; System.out.println(a); } }
6.位运算符
位运算符常用于对二进制数进行位操作,例如进行位运算、位掩码、位反转等操作。在程序中使用位运算符可以提高运算的效率。
- 按位与(&):两个对应的二进制位都为1时,结果为1;否则结果为0。
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a & b; // result = 1(二进制表示为 001)
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a & b; // result = 1(二进制表示为 001) ```-```angelscript int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a & b; // result = 1(二进制表示为 001)
- 按位或(|):两个对应的二进制位中有一个为1时,结果为1;否则结果为0。
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a | b; // result = 7(二进制表示为 111)
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a | b; // result = 7(二进制表示为 111)
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a | b; // result = 7(二进制表示为 111)
- 按位异或(^):两个对应的二进制位不相同时,结果为1;否则结果为0。
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a ^ b; // result = 6(二进制表示为 110)
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a ^ b; // result = 6(二进制表示为 110)
int a = 5; // 二进制表示为 101 int b = 3; // 二进制表示为 011 int result = a ^ b; // result = 6(二进制表示为 110)
- 按位取反(~):对二进制数进行取反操作,即0变1,1变0。
int a = 5; // 二进制表示为 101 int result = ~a; // result = -6(二进制表示为 )
int a = 5; // 二进制表示为 101 int result = ~a; // result = -6(二进制表示为 )
int a = 5; // 二进制表示为 101 int result = ~a; // result = -6(二进制表示为 )
- 左移(<<):将二进制数向左移动指定位数,右边空出的位用0填充。
int a = 5; // 二进制表示为 101 int result = a << 2; // result = 20(二进制表示为 10100)
int a = 5; // 二进制表示为 101 int result = a << 2; // result = 20(二进制表示为 10100)
int a = 5; // 二进制表示为 101 int result = a << 2; // result = 20(二进制表示为 10100)
- 右移(>>):将二进制数向右移动指定位数,左边空出的位用原来的符号位填充。
int a = 20; // 二进制表示为 10100 int result = a >> 2; // result = 5(二进制表示为 101)
int a = 20; // 二进制表示为 10100 int result = a >> 2; // result = 5(二进制表示为 101)
int a = 20; // 二进制表示为 10100 int result = a >> 2; // result = 5(二进制表示为 101)
总结
本文介绍了常用的各种运算符,重点熟悉前五个即可,位运算符了解即可。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/121669.html