java运算符以及流程控制语句
一、运算符
1、定义
指明对操作数的运算方式
2、分类
1)、操作数数目来分
一元运算符|单目运算符 : 操作数只有一个的运算符 ++ –
二元运算符|双目运算符 : 操作数有两个的运算符 + - * / %
三元运算符|三目运算符 : 条件运算符 ( ? : ;)
操作数: 运算符左右两边的数就是操作数
2)、功能来分
1.赋值运算符
2.比较运算符(关系运算符)
3.逻辑运算符
4.位运算符(了解)
5.条件运算符
3、算数运算符
1)、分类
一、 + (加)
A:加法运算
B:正号(可以省略)
C:字符串连接符:当+左右两边如果有一个字符串,都作为字符串的连接符使用 把内容拼接成为一整个字符串
二、 -(减)
A:负号,不能省略
B:减法运算
三、 *(乘)
四、 /(除)
五、 % (取模|取余|模以)
当参与运算的两个操作数,第一个操作数小于第二个操作数的时候,结果就是第一个操作数
六、 ++()
七、 –
++ – ++就是自身+1 |自增 --自身-1 i+±-> i=i+1;
1)、操作自己:值的改变只影响自己的结果
++放在操作数的前面后者后面都是自身+1
–放在操作数的前面后者后面都是自身-1
2)、操作别人|参与运算
++|–放在操作数的前面,先自身+1|-1,再参与运算 ++a
++|–放在操作数的后面,先参与运算,再自身+1|-1 a++
4、赋值运算符
1)、定义
基本的赋值运算符是“=”。他的优先级别低于其他的运算符,所以对该运算符往往最后读取。
= += -= = /= %=
a+=b; -->a=a+b;
a=b; -->a=a*b;
a/=b; -->a=a/b;
a-=b; -->a=a-b;
a%=b; -->a=a%b;
2)、分类
A:基本赋值运算符 =
双目运算符
在java中唯一一个自右向左运算的运算符
B:二、扩展赋值运算符(基本赋值运算符+算数运算符)
优点:提高执行效率
可以自动做强制类型转换
缺点:不直观
推荐使用扩展赋值运算符
5、比较运算符
1)、定义
关系运算符有6种关系,分别为小于、小于等于、大于、等于、大于等于、不等于。
2)、分类 > < >= <= == !=
A : > < >= <= 只能用来比较基本数据类型 byte short int long float double char
B : == != 可以用来比较基本数据类型,可以用来比较引用数据类型
比较运算符最终的结果为boolean类型的值 true/false
6、逻辑运算符
1)、定义
把语句连接成更复杂的复杂语句。
2)、
与 (&) : 如果有一个是假就为假,两个都为真才是真
或 (|) : 如果有一个为真就是真,两个都为假才是假
取反 (!) : 取反 !true->false !false->true
异或 (^) : 两个相同为false,不同为true
逻辑与 (&&)
逻辑或 (||)
(&&)(||)的逻辑与&,|一样,但是有短路的作用,第一个操作数的值就能够决定最终的结果了,第二个操作数不再运行
推荐使用(&&) | (||)
7、条件运算符
1)、公式
表达式 ? 值一 : 值二 ;
2)、条件表达式是一个值为boolean类型的表达式
3)、执行流程:
1.计算条件表达式的结果
2.如果结果true,最终的结果为值一
3.如果结果为false,最终的结果为值二
8、位运算符
1)、定义
位运算符用来对二进制位进行操作
2)、分类
所有的位运算符在运算时会先转成二进制,再进行运算,得到的结果转为十进制
& : 把两边二进制的数,同一位数的两个数比较,如果一个为0就是0,两个都为1才是1
| : 把两边二进制的数,同一位数的两个数比较,如果一个为1就是1,两个都是0才是0
^ : 把两边二进制的数,同一位数的两个数比较,如果两个相等为0,不等为1
9、位移运算符
A : >> 右移
把左边的操作数转为二进制,想象右侧有一个分水线,向右移动第二个操作数位,保留左右留在分水线左侧的二进制数,再转为十进制
B : << 左移
把左边的操作数转为二进制,想象右侧有一个分水线,向右移动第二个操作数位,空缺位置补零,最终转为十进制
右移 /2的几次方 左移 *2的几次方
9>>2 ------> 9/2^2
9<<2 ------> 9*2^2
10、Scanner 类的引用----->引用数据类型
1)、创建一个引用数据类型的变量(或者叫引用)
for example: 创建一个Scanner类型的变量|引用
引用数据类型 变量名 = new 引用数据类型();
Scanner sc = new Scanner();
2)、使用Scanner
引用.功能名字;
for example:
sc.nextInt;
3)、Scanner类型步骤:接受键盘输入
A:导包 告诉Scanner类所在的位置
使用import关键字导包 java.util.Scanner
位置:类的上面
B:使用公式创建Scanner类型的引用
Scanner sc = new Scanner(System.in);
不要忘记打印参数!
C:使用功能
从有效字符开始,直到遇到空格或者tab停止接收,功能遇到enter结束
接收用户输入的String类型的数据,一整行
引用.nextLine(); 遇到enter就结束,无论是否接受到内容
D:关闭
引用.close(); 养成良好的习惯
在使用完毕整个Scanner功能之后再去关闭,否则创新开启Scanner的应用也无效