运算符是具有运算能力的一些特殊符号,Java中提供了丰富的运算符,Java 语言中常用的运算符可分为如下几种:
Ø 算术运算符
Ø 赋值运算符
Ø 比较运算符
Ø 逻辑运算符
Ø 条件运算符
一、赋值运算符
赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。Java 支持的常用赋值运算符,如下表所示:
说明:赋值运算符的右边可以是数值常量,也可以是一个变量或者表达式
举例: int a = 3;
int a = 3; int b = a;
二、算术运算符
算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。
Java 中常用的算术运算符:
自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型变量。
放在操作元前面的自增、自减运算符,会先将变量的值加1(减1),然后再使该变量参与表达式的运算。
一定要注意哦!自增和自减运算符只能用于操作变量,不能直接用于操作数值或常量!例如 5++ 、 8-- 等写法都是错误滴!
举例1:
int a = 5;
int b = ++a;
System.out.println("a:"+a);
System.out.println("b:"+b);
运行结果: a:6
b:6
放在操作元后面的自增、自减运算符,会先使变量参与表达式的运算,然后再将该变量加1(减1)。
举例2:
int a = 5;
int b = a++;
System.out.println("a:"+a);
System.out.println("b:"+b);
运行结果: a:6
b:5
三、关系运算符
关系运算符用于比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。
Java 中常用的比较运算符如下表所示
注意哦:
1、 > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型
2、 == 、 != 两边的操作数既可以是数值类型,也可以是引用类型
举例
int a = 16;
double b = 9.5;
String str1 = "hello";
String str2 = "javac";
System.out.println(a==b);
System.out.println(a>b);
System.out.println(a<=b);
System.out.println(str1==str2);
运行结果:
false
true
false
false
四、逻辑运算符
逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:
我们可以从“投票选举”的角度理解逻辑运算符:
1、 与:要求所有人都投票同意,才能通过某议题
2、 或:只要求一个人投票同意就可以通过某议题
3、 非:某人原本投票同意,通过非运算符,可以使其投票无效
4、 异或:有且只能有一个人投票同意,才可以通过某议题
当使用逻辑运算符时,我们会遇到一种很有趣的“短路”现象。
譬如:( one > two ) && ( one < three ) 中,如果能确定左边 one > two 运行结果为 false , 则系统就认为已经没有必要执行右侧的 one < three 啦。
同理,在( one > two ) || ( one < three ) 中,如果能确定左边表达式的运行结果为 true , 则系统也同样会认为已经没有必要再进行右侧的 one < three 的执行啦!
举例:
boolean a = true ;
boolean b = false;
System.out.println(a && b);
System.out.println(a || b);
System.out.println(!a);
System.out.println(a ^ b);
运行结果:
false
true
false
true
五、条件运算符
条件运算符( ? : )也称为 “三元运算符”。
语法形式:布尔表达式 ? 表达式1 :表达式2
运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值。
因为,表达式 8>5 的值为 true ,所以,返回: 8大于5。
六、运算符的优先级
所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:
级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 7 + 3 * 2 得到的结果是 13 “先乘后加”嘛!
友情提示:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。
举例:
int a = 12;
int b = a* ((a + 18) % 4); //使用小括号,指明运算符的优先级,更直观
System.out.println(b);
运算结果:24
分析:小括号优先级最高,因此
1、 执行 a + 18 ,结果为 30
2、 执行( a + 18 ) % 4 取模,结果为 2
3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24
任务1:
体重指数,又称身体质量指数,英文为Body Mass Index,简称BMI),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。
男性低于20, 女性低于19,属于过轻;男性20-25,女性19-24,属于适中;男性25-30,女性24-29,属于过重;男性30-35,女性29-34,属于肥胖;男性高于35,女性高于34,属于非常肥胖。专家指出最理想体重指数是22。
要求根据指定的性别、身高、体重获得体重指数,并且输出。
任务2:
给定华氏温度F的值是150,本题要求编写程序,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。
输出样例:
Celsius = 65