这里主要记自增和自减运算符,这块之前一直概念不是很清楚,之前听老师讲课也没有听得很明白,今天看书的时候猛然间才发现这里非常简单记忆。
一、关于自增、自减运算符
自增、自减运算符都属于单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整形或者浮点型变量。自增、自减运算符的作用是使变量的值加1或者减1(这里之前知道)。放在操作元前面的自增、自建运算符,会先将变量的值+1或者-1,然后再使该变量参与表达式的运算,然后再将该变量+1或者-1,如下:
++a(--a) //表示在使用变量a之前,先使a的值+1或者-1
a++(a--) //表示在使用变量a之后,再使a的值+1或者-1
举个栗子:
++a和a++的作用都相当于a=a+1。假设a=4:
b=++a // 先将a的值加1,然后赋给b,此时a=5,b=5
b=a++ //先将a的值赋给b,然后a+1,此时a=5,b=4
二、关于逻辑运算符
这里想到什么先写什么吧
逻辑运算符的操作元必须是boolean型数据,包括&(&&)逻辑与、‖逻辑或、!逻辑非。除了“!”是单目运算符之外,其他都是双目运算符。
&与&&的区别:(当两个表达式全为true时,结果才为true)
假设有两个表达式:表达式1,表达式2
使用&,会判断两个表达式;而&&则是针对Boolean类型的类进行判断,当表达式1为false时,直接输出结果,不去判断表达式2(“短路”运算符)
int a;
int b;
//声明boolean型变量,用于保存应用逻辑运算符“&&”的返回值
boolean result = ((a>b)&&(a!=b));
//声明boolean型变量,用于保存逻辑运算符“‖”后的返回值
boolean result2 = ((a>b)‖(a!=b));
//输出结果
System.out.println(result); //false
System.out.println(result2); //true