java中常用的运算符有哪几类_Java 之常用运算符(3)

什么是运算符:

运算符是一种“功能”符号,用以通知 Java 进行相关的运算。譬如,我们需要将变量 age 的值设置为 20 ,这时候就需要一个“=”,告诉程序需要进行赋值操作。

Java 语言中常用的运算符可分为如下几种:

Ø 算术运算符

Ø 赋值运算符

Ø 比较运算符

Ø 逻辑运算符

Ø 条件运算符

我们试着通过一个简单的例子来看一下运算符的使用吧!

当计算两数之和时,需要使用加法运算符。在 Java 中,加法运算符使用“+”表示

在编辑器中,第 5 行输入:

int sum = a + b ;

运行结果为: 两数之和为:36

1 public classHelloWorld{2 public static voidmain(String[] args) {3 int a=12;4 int b=24;5 int sum = a+b;6 System.out.println("两数之和为:"+sum);7 }8 }

Java中的算术运算符:

算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。

Java 中常用的算术运算符:

33cf2086b35f1aa768ff4bfb8c64830a.png

其中,++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同滴

例1:

1 int a = 5;2 int b = ++a; //++出现在左边 让a先执行自增,然后将值赋给变量b

3 System.out.println("a:"+a);4 System.out.println("b:"+b);

运行结果:

782821a11b350f9dd09ee1a9beed03c3.png

例2:

1 int a = 5;2 int b = a ++; //++出现在右边 将a的值赋给变量b,然后在执行自增

3 System.out.println("a:"+a);4 System.out.println("b:"+b);

运行结果:

84d998e8b42fbaac70d2d1e7cd9683ec.png

一定要注意哦!自增和自减运算符只能用于操作变量,不能直接用于操作数值或常量!例如 5++ 、 8-- 等写法都是错误滴!

PS:% 用来求余数,也称为”取模运算符“

上个栗子看看:

1 public classHelloWorld{2 public static voidmain(String[] args) {3 int age1=24; //给定四个人的年龄

4 int age2=18;5 int age3=36;6 int age4=27;7 int sum = age1+age2+age3+age4; //求取四个年龄的总和

8 double avg = sum/4; //求取四个年龄的平均值

9 int minus = age1-age2; //求取 age1 和 age2 的差值

10 int newAge = -- age1; //求取 age1 自减后的年龄

11 System.out.println("年龄总和:"+sum);12 System.out.println("平均年龄:"+avg);13 System.out.println("年龄差值:"+minus);14 System.out.println("自减后的年龄:"+newAge);15

16 }17 }

运行结果如下:

90db4ce20792c660af707f188f9a817e.png

Java中的赋值运算符:

赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。

Java 支持的常用赋值运算符,如下表所示:

e32f9156b1026efc4baf4aca5828d690.png

Java中的比较运算符:

比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

Java 中常用的比较运算符如下表所示:

5bd8ef845d4b3ff76e6fb1cf983ebccf.png

注意哦:

1、  > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

2、  == 、 != 两边的操作数既可以是数值类型,也可以是引用类型

上个栗子 look look:

1 public classHelloWorld{2 public static voidmain(String[] args) {3 int a=16;4 double b=9.5;5 String str1="hello";6 String str2="imooc";7 System.out.println("a等于b:" + (a ==b));8 System.out.println("a大于b:" + (a >b));9 System.out.println("a小于等于b:" + (a <=b));10 System.out.println("str1等于str2:" + (str1 ==str2));11 }12 }

运行结果如下:

0f470b19bd4fee2856af68c4506dddf1.png

Java中的逻辑运算符:

逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:

5304d8b848ee51952d2e751e716d6b2c.png

我们可以从“投票选举”的角度理解逻辑运算符:

1、 与:要求所有人都投票同意,才能通过某议题

2、 或:只要求一个人投票同意就可以通过某议题

3、 非:某人原本投票同意,通过非运算符,可以使其投票无效

4、 异或:有且只能有一个人投票同意,才可以通过某议题

当使用逻辑运算符时,我们会遇到一种很有趣的“短路”现象。

譬如:( one > two ) && ( one < three ) 中,如果能确定左边 one > two 运行结果为 false , 则系统就认为已经没有必要执行右侧的 one < three 啦。

同理,在( one > two ) || ( one < three ) 中,如果能确定左边表达式的运行结果为 true , 则系统也同样会认为已经没有必要再进行右侧的 one < three 的执行啦!

栗子如下:

假设有 A 、 B 、 C 、 D 四个人投票,由他们决定投票是否通过,此时就到了逻辑运算符“大显身手”的时候了。

1 public classHelloWorld {2 public static voidmain(String[] args) {3 boolean a = true; //a同意

4 boolean b = false; //b反对

5 boolean c = false; //c反对

6 boolean d = true; //d同意

7 System.out.println((a && b)+"未通过");8 System.out.println((a || b)+"通过");9 System.out.println((!a)+"未通过");10 System.out.println((c ^ b)+"通过");11

12 }13 }

结果如下:

a2919ea730f4dabb34f88ae7d54302ef.png

Java中的条件运算符:

条件运算符( ? : )也称为 “三元运算符”。

语法形式:布尔表达式 ? 表达式1 :表达式2

运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

例如:

879c729e688f34fa22dfc42ccab4b0ca.png

因为,表达式 8>5 的值为 true ,所以,返回: 8大于5

Java中的运算符优先级:

所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

8dee1fe7e570bd6be950a892913864fc.png

级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 7 + 3 * 2  得到的结果是 13 “先乘后加”嘛!

PS:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。例如:

a850b6bd5a7f7d103b49f7bc67c180e6.png

分析:小括号优先级最高,因此

1、 执行 a + 18 ,结果为 30

2、 执行( a + 18 ) % 4 取模,结果为 2

3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24

来个栗子练练手吧!   表达式( 11+ 3* 8 ) / 4 % 3 的结果是()

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

答案:2解析:

第一步:计算3*8,结果为24;第二步:计算11+3*8,结果为35;第三步:计算(11 + 3 * 8) / 4,结果为8;第四步:计算(11 + 3 * 8) / 4 % 3,结果为2

先自己计算一遍哈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值