java基础知识——运算符

目录

运算符分类

算术运算符

/:除法

%:取余运算符

+:加号

++,--自增自减运算符

赋值运算符

关系运算符

逻辑运算符

基本规则

逻辑运算符&&与&,||与|的区别

三元运算符

位移运算符

左移运算符<<和右移运算符>>

无符号右移>>>

额外的运算符知识


概念:对常量和变量进行操作的符号

运算符分类

算术运算符,赋值运算符,关系运算符,逻辑运算符,三元运算符

优先级:算数运算符>关系运算符>逻辑运算符

算术运算符

算数运算符含义
+正号
-负号
+
-
*
/除(即算数中整数的结果)
%取模(即算术中的求余数)
++自增(前)
++自增(后)
自减(前)
自减(后)

/:除法

整数相除只能得到整数,要想得到小数,就必须有浮点数参与运算,比如3/4=0,而3/4.0=0.75

%:取余运算符

得到的是两个相除数据的余数,结果的余数符号是跟被模数的符号一致的

例如:12%5=2  -12%5=-2  12%-5=2  -12%-5=-2

使用场景: %:判断两个数据是否整除。

+:加号

加号在Java中有两种功能:

  1. 就是数学上普通的加号,做数字相加
  2. 要是加号两边有一边是字符串,则做连接符,用于拼接出新的字符串

++,--自增自减运算符

对变量做加1或者减1的操作

单独使用的时候,++或者--无论是放在变量的前面还是后面,结果是一样的

参与操作的时候:

                 如果++或者--在变量的后面,先拿变量参与操作,后变量做++或者--

                 如果++或者--在变量的前面,先变量做++或者--,后拿变量参与操作

赋值运算符

基本的赋值运算符:=

扩展的赋值运算符:+=,-=,*=,/=,%= 隐含了强制类型转换

举例:+= 把左边和右边的数据进行运算,最后赋值给左边。左边的只能是变量

Int a=10;

a+=10; 等同于 a=(a的数据类型)(a+10);

a最后的结果等于20

关系运算符

==,!=,>,>=,<,<=

关系运算符的结果都是boolean型,也就是要么是true,要么是false

逻辑运算符

&,|,^,!,&&,||

用法:逻辑运算符一般用于连接boolean类型的表达式或者值。

表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子

算术表达式:a + b

         比较表达式:a == b(条件表达式)

基本规则

&逻辑与:有false则false。

|逻辑或:有true则true。

^逻辑异或:相同为false,不同为true。

!逻辑非:非false则true,非true则false。

逻辑运算符&&与&,||与|的区别

A:&&和&的区别?

         a:最终结果一样。

         b:&&具有短路效果。左边是false,右边不执行。

         &是无论左边是false还是true,右边都会执行

B:||和|的区别?

         a:最终结果一样

         b:||具有短路效果.左边是true,右边不执行

         |是无论左边是false还是true,右边都会执行

三元运算符

格式

         (关系表达式)?表达式1:表达式2;

         如果条件为true,运算后的结果是表达式1;

         如果条件为false,运算后的结果是表达式2;

条件表达式是boolean类型,表达式1和表达式2必须是可以统一成一个类型的结果,因为必须要有一个统一类型去接收结果,如果表达式1是int类型,而表达式2是String类型,就无法定义到底要什么类型来接收结果,如果一个是int,一个是double,则可以定义结果为double来接收

例如:判断一个成绩,输出优秀、及格还是不及格,要求:使用三目运算符完成

Int score = 99;

String result = score>80?"优秀":score>60?"及格":"不及格";

位移运算符

左移运算符<<和右移运算符>>

结论:

  1. 位运算符操作的都是整型的数据
  2. <<:在一定范围内,每向左移一位,相当于乘以2

>>:在一定范围内,每向右移一位,相当于除以2

最好我们把要位移的数据进行二进制展示,再做左移或者右移操作,左移最低位补0,而右移要看原来数字最高位是1还是0,如果是负数,最高位为1,则空缺位补上1,如果是整数,最高位是0,则空缺位补上0,这样就知道最后移动后到底得到的数是多少

无符号右移>>>

被移数据的二进制最高位无论是0或者是1,空缺位都用0补

额外的运算符知识

图中的1就相当于true,0就相当于false

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值