1、算术运算符:+ – * / % ++ — 等。
2、自增自减运算符;++ 、–:符号在前,先自增(自减),再运算;符号在后,先运算,再自增(自减)
3、赋值运算符:= += -= *= /= %= 等。
4、比较运算符:> 、< 、>= 、<=、==、!=、===(全等)、!==:类型相同直接比较,类型不同先转换再比较。
5、逻辑运算符:&&(短路与)、||(短路或)、!(非)
符号作用说明
1.算术运算符:
自增变量的值加1–自减变量的值减1
自增自减运算符-
// ++读作自增,–读作自减; 运算规则如下
//具体使用时也分为两种情况,如下:
System.out.println(a + b);
System.out.println(a – b);
System.out.println(a * b); // 20
System.out.println(a / b); // 5
System.out.println(5 / 2); // 2.5 ==> 2
System.out.println(5.0 / 2); // 2.5
int i = 5;
int j = 2;
System.out.println(1.0 * i / j); // 2.5
System.out.println(a % b); // 0
System.out.println(3 % 2); // 1
System.out.println("—————————————");
自增自减运算符;
++和– ++读作自增,–读作自减;
1.单独使用:++或者–放在变量前面没有区别
++在后:先做其他事情,再做自增和自减
//1.单独使用:++或者–放在变量前面没有区别
int a = 10;
a++; //11
–a; //10
System.out.println(a); //10
//++在后:先做其他事情,再做自增和自减
int a = 10;
int b = a++; //等价于 int b = a; a++;
赋值运算符
int a = 10; //将数据10赋值给左边的变量a
除了基本的赋值运算符,还有扩展的赋值运算符。
有 += -= *= /= %=
解释;=(赋值) +=(加后赋值) -=( 减后赋值 ) *= ( 乘后赋值 ) /= ( 除后赋值 )%=( 取余后赋值 // a = a % b,将a÷b的余数给a )
1.基本赋值运算符: =符号含义: 把右边的值赋值给左边的变量 2.扩展赋值运算符: += -= *= /= %= 符号含义:将右边的数据和左边的变量相加、相减、相乘、相除、取余数后,将结果 重新赋值给左边的变量。
// +=解析:在a原来记录值的基础上累加5,将结果重新赋值给a;
a += 5;
//最终打印a的值为15
System.out.println(a);
// -=解析:在a原来记录值的基础上累减5,将结果重新赋值给a;
a-=5;
//最终打印a的值为10
System.out.println(a);
// *=解析:在a原来记录值的基础上出乘5,将结果重新赋值给a;
a*=5;
//最终打印a的值为50
System.out.println(a);
// /=解析:在a原来记录值的基础上除5,将结果重新赋值给a;
a/=5;
//最终打印a的值为10
System.out.println(a);
// %=解析:在a原来记录值的基础上取余后赋值,将结果重新赋值给a;
a%=5;
//最终打印a的值为0
System.out.println(a);
关系运算符
关系运算符有6种关系,分别为小于、小于等于、大于、等于、大于等于、不等于。
==(a==b判断a和b的值是否相等,成立为true,不成立为false )
!=(a != b,判断a和b的值是否不相等,成立为true,不成立为false)
>( a > b,判断a是否大于b,成立为true,不成立为false)
>=(a >= b,判断a是否大于等于b,成立为true,不成立为false)
< (a < b,判断a是否小于b,成立为true,不成立为false)
<= (a <= b,判断a是否小于等于b,成立为true,不成立为false )
public class OperatorDemo4 {
public static void main(String[] args) {
掌握关系运算符的基本使用。
int a = 10;
int b = 5;
boolean rs = a > b;
System.out.println(rs);
System.out.println(a >= b); // 要么a大于b,或者a等于b
System.out.println(2 >= 2); // true
System.out.println(a < b);
System.out.println(a <= b); // false
System.out.println(2 <= 2); // true
System.out.println(a == b); // false
System.out.println(5 == 5); // true
// 注意了:判断是否相等一定是用 == ,=是用来赋值的。
// System.out.println(a = b);
System.out.println(a != b); // true
System.out.println(10 != 10); // false
System.out.println(false ^ true ^ false);
}
}
逻辑运算符
逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否 成立,判断的结果是 true 或 false
在逻辑与运算中,只要有一个表达式的值为false,那么结果就可以判定为false了,没有必要将所有表达 式的值都计算出来,短路与操作就有这样的效果,可以提高效率。同理在逻辑或运算中,一旦发现值为 true,右边的表达式将不再参与运算。
& 逻辑与 2 > 1 & 3 >2 多个条件必须都是true, 结果才是true; 有一个是false, 结果就 是false
逻辑与&,无论左边真假,右边都要执行。
&& 短路 与 2 > 10 && 3 > 2
判断结果与 "&" 一样, 过程不同: 左边为false, 右边则不执 行
短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行。
逻辑或 2 > 1 | 3 < 5 多个条件中只要有一个是true, 结果就是true
逻辑或|,无论左边真假,右边都要执行。
|| 短路 或 2 > 1 || 3 < 5 判断结果与 "|" 一样, 过程不同: 左边为true, 右边则不执行
短路或||,如果左边为假,右边执行;如果左边为真,右边不执行。
! 逻辑非, !(2 > 1) 就是取反,你真我假, 你假我真; !true == false、!false == true
^ 逻辑异或 , 2 > 1 ^ 3 > 1 前后条件的结果相同, 直接返回false, 前后条件的结果不同, 才
返回true
public class OperatorDemo5 {
public static void main(String[] args) {
// 目标:掌握逻辑运算符的使用。
// 需求:要求手机必须满足尺寸大于等于6.95,且内存必须大于等于8.
double size = 6.8;
int storage = 16;
// 1、& 前后的条件的结果必须都是true ,结果才是true.
boolean rs = size >= 6.95 & storage >= 8;
System.out.println(rs);
// 需求2:要求手机要么满足尺寸大于等于6.95,要么内存必须大于等于8.
// 2、| 只要多个条件中有一个是true,结果就是true.
boolean rs2 = size >= 6.95 | storage >= 8;
System.out.println(rs2);
到这里关于逻辑运算符的规则记学习完了,给你一个运算表达式你能分析出结果就行。至于逻辑运算符
的实际运用,需要在学习了流程控制语句之后,才能实际用到。
逻辑运算符在程序中常用于组合几个条件判断,根据条件判断的结果是true还是false,来决定后续该执
行哪些操作。
2.6 三元运算符
接下来,我们学习今天最后一种运算符,叫做三元运算符。
先认识一下三元运算符的格式:
解释:
问号前面的位置是判断的条件,判断结果为boolean型,为true时调用表达式1,为false时调用表达
式2。
其逻辑为:如果条件表达式成立或者满足则执行表达式1,否则执行表达式2。
如下图所示:判断学生的成绩是否>=60,如果为true,就考试通过;如果为false,就成绩不合格。
// 3、!取反的意思
System.out.println(!true); // false
System.out.println(!false); // true
System.out.println(!(2 > 1)); // false
// 4、^ 前后条件的结果相同时返回false,不同时返回true.
System.out.println(true ^ true); // false
System.out.println(false ^ false); // false
System.out.println(true ^ false); // true
System.out.println(false ^ true); // true
// 5、&& 左边为false,右边不执行。
int i = 10;
int j = 20;
// System.out.println(i > 100 && ++j > 99);
System.out.println(i > 100 & ++j > 99);
System.out.println(j);
// 6、|| 左边是true ,右边就不执行。
int m = 10;
int n = 30;
// System.out.println(m > 3 || ++n > 40);
System.out.println(m > 3 | ++n > 40);
System.out.println(n);
}
}
三元运算符
三元运算符的格式:关系表达式 ? 表达式1 : 表达式2;
问号前面的位置是判断的条件,判断结果为boolean型,为true时调用表达式1,为false时调用表达
式2。
其逻辑为:如果条件表达式成立或者满足则执行表达式1,否则执行表达式2。
public class OperatorDemo6 {
public static void main(String[] args) {
// 目标:掌握三元运算符的基本使用。
double score = 58.5;
String rs = score >= 60 ? "成绩及格" : "成绩不及格";
System.out.println(rs);
// 需求2:找出2个整数中的较大值,并输出。
int a = 99;
int b = 69;
int max = a > b ? a : b;
System.out.println(max);
// 需求3:找3个整数中的较大值。
int i = 10;
int j = 45;
int k = 34;
// 找出2个整数中的较大值。
int temp = i > j ? i : j;
// 找出temp与k中的较大值。
int max2 = temp > k ? temp : k;
System.out.println(max2);
}
}



