Java学习(三)运算符、键盘录入、流程控制语句
java语言基础,学习运算符:逻辑运算符 、位运算符 、三元运算符 、键盘录入数据;流程控制语句:顺序结构语句 、选择结构
一、运算符
1.逻辑运算符
-
分类
&(并且) , |(或者) , !(非) , ^(异或) , &&(短路与) , ||(短路或) -
结论
& 逻辑与:有false则false。
| 逻辑或:有true则true。
^ 逻辑异或:相同为false,不同为true。
! 逻辑非:非false则true,非true则false。 -
注意
&&和&的区别:运算最终结果一样,但是&&具有短路效果。左边是false,右边不执行
||和|的区别:运算最终结果一样,但是&&具有短路效果。左边是true,右边不执行
2.位运算符
-
分类
&(与),|(或),^(异或) , ~(按位取反) , <<(左移) ,>>(右移) ,>>>(无符号右移)
-
结论
&:有0则0
|:有1则1
^:相同则0,不同则1
~:按位取反 0变1 1变0 符号位也包含在内取反 -
左移右移
把<<左边的数据乘以2的移动次幂 例如 10<<3 结果 10*2^3=80
把>>左边的数据除以2的移动次幂 例如40>>3 结果 40/2^3=5
负数也一样
3.三元运算符
-
格式
(关系表达式) ? 表达式1 : 表达式2;
如: int a=(10>20)?30:50 // a=50 -
执行流程
计算关系表达式的值,如果为true, 运算后的结果是表达式1;
如果为false,运算后的结果是表达式2;
二、键盘录入
1.格式
导包
import java.util.Scanner;
位置: 在class上面
创建键盘录入对象
Scanner sc = new Scanner(System.in);
通过对象获取数据
int x = sc.nextInt();
三、流程控制语句
1.顺序结构
- 是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
2.选择结构
- 分类:if语句,switch语句
- if语句的三种格式
if(比较表达式或者是boolean类型的值) {
语句体;
}
if(比较表达式) {
语句体1;
}else {
语句体2;
}
if(比较表达式1) {
语句体1;
}else if(比较表达式2) {
语句体2;
}else if(比较表达式3) {
语句体3;
}
...
else {
语句体n+1;
}
- switch语句的格式
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
....
default:
语句体n+1;
break;
}
- switch语句格式解释
(1):switch表示这是switch语句
表达式的取值:byte,short,int,char
JDK5以后可以是枚举(什么是枚举,以后再讲)
JDK7以后可以是String
(2):case后面跟的是要和表达式进行比较的值,要的是常量值
(3):语句体部分可以是一条或多条语句
(4):break表示中断,结束的意思,可以结束switch语句
(5):default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似
总结
今天学习java语言基础的运算符:逻辑运算符 、位运算符 、三元运算符 、键盘录入数据以及流程控制语句中的顺序结构语句和选择结构语句,循环结构语句明天再讲。