Java通过哪些机制处理数据(3)-运算符

一、思维导图

二、算术运算符

(1)++出现在变量后

++不论是出现在变量的前还是后,变量都自加1。
//++出现在变量前和变量后有什么区别:
//先看++出现在变量后。
//语法:当++出现在变量后,会先做赋值运算,再加1
Int m =10;
Int n = m++;
System.out.println(m);//11
System.out.println(n);//10

(2)++出现在变量前

//语法规则:当++出现在变量前的时候,会先进行自加1的运算,然后再赋值。
Int x = 100;
Int y  =++x;
System.out.println(x);//101
System.out.println(y);//101

(3)System.out.println(a++)的理解

System.out.println(a++);
相当于有一个变量temp

Int temp;
Temp = a ++;
System.out.println(temp);

 三、关系运算符

所以的关系运算符的运行结果都是布尔类型,不是true就是false,不可能是其他值。

在java语言中:

=:赋值运算符

==:关系运算符,判断是否相等。

关系运算符中如果有两个符号的话,两个符号之间不能有空格。

四、逻辑运算符& 逻辑与(并且) | 逻辑或(或者) ! 逻辑非(取反) && 短路与 || 短路或

特点:(重要)逻辑运算符两个要求都是布尔类型,并且最终的运算结果也是布尔类型,

(1)逻辑 & :只有两边是ture才是true,只要有false就是false。True & true --> true。

(2)逻辑 | :只要有一边是true,结果就是true。

(3) & 与 && 的区别:

也就是说,&后面的值是执行了的。

 &&后面的没有执行。

这两个运算符的运算结果没有任何区别,完全相同,只不过“短路与&&”会发生短路现象。

a、什么是短路现象呢?

右边表达式不执行,这种现象叫做短路现象。

b、什么时候使用&&,什么时候使用&?

从效率方面来说,&& 比 & 的效率高一些,因为逻辑与&不管第一个表达式结果是什么,第二个表达式一定会执行。

五、赋值运算符

(1)赋值运算符包括基本赋值运算符和扩展赋值运算符。

(2)基本赋值运算符?

=

(3)扩展的赋值运算符?

+=,-=,*=,/=,%=

(4)重要的语法机制,使用扩展赋值运算符的时候,永远都不会改变运算结果类型。

Byte x =100;

X + =1;

x自诞生依赖是byte,那么x变量的类型永远都是byte。不会变,不管以后的后面有多少的数字,赋值运算符的右边优先执行,先执行右边的表达式,然后将表达式右边的结果赋值给左边的“盒子”。

a、 I + =10和 I =i+10真的完全一样吗?

然后,我们再看I += 1

 

 其实x + =1 等同于:x =(byte)(x+1);所以可能会损失精度。

六、条件运算符

(1)语法格式:

布尔表达式? 表达式1:表达式2

(2)执行原理是什么?

布尔表达式的结果为true时,表达式1的执行结果作为整个表达式的结果。

布尔表达式的结果为false时,表达式2的执行结果作为整个表达式的结果。

Boolean sex = false;

Sex? '女':'男';

这时候会报错。

//前面的变量c的类型不能随意编写。

//最终的计算结果是字符型,所以变量也需要使用char类型。

Char c  = Sex? '女':'男';

七、字符串连接运算符

(1)+运算符在java语言中有两个作用。

作用1:求和

作用2:字符串拼接

(2)什么时候求和?什么时候进行字符串的拼接呢?

当+运算符两边都是数字类型的时候,求和。

当+运算符两边的“任意一边”是字符串类型,那么这个+会进行字符串拼接操作。

(3)字符串拼接完之后的结果还是一个字符串。

注意:当一个表达式当中有多个加号的时候,遵循自左向右的顺序依次执行。(除非额外加了小括号)

System.out.println(100+200+"110");//300110

 4个加号只是为了完成字符串拼接。

	//在Java语言中怎么定义字符串类型的变量呢?
	String name ="jack";
	//加一个双引号,然后双引号之间加两个加号,然后两个加号中间加变量名。
System.out.println("登录成功欢迎"+name+"回来");

总结:运算符是对数据与数据之间的处理。

发布了168 篇原创文章 · 获赞 28 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/MyxZxd/article/details/105678149