JavaSE基础二:运算符、键盘录入用户数据、if语句、switch语句

一、运算符

1.逻辑运算符:

逻辑运算符一般用于连接boolean类型的表达式或者值
& 与 ——————有false则false
| 或 ——————有true则true
! 非 ——————true变false,false变true
^ 异或——————相同为false,不同为true
&& 和&的区别 , || 和|的区别:
&& 和&:二者结果一样。区别:&&当左边是false时,不执行右边语句;&执行完该语句
|| 和 |:二者结果一样。区别:||当左边时true时,不执行右边语句;| 执行完该语句

2.位运算符:

& 与——————有0则0
| 或——————有1则1
^ 异或——————相同则0,不同则1
~按位取反——————0变1,1变0
<<左移——————空位补0,被移除的高位丢弃
.>>右移——————最高位是0,空缺位补0;最高位是1,空位补1
.>>>无符号右移——————最高位无论是0或者是1,空缺位都补0
结论:
<< : 把要移动的数据乘以2的移动次幂 例如 7<<3 结果 7*2^3=5
. >> : 把要移动的数据除以2的移动次幂 例如 16>>3 结果 16/2^3=2

3.三元运算符:

(关系表达式) ? 表达式1 : 表达式2;
解释:先计算关系表达式的值,如果值为true, 运算后的结果是表达式1; 如果值为false,运算后的结果是表达式2;
例:int a=(30>20)?70:50; a=70

二、键盘录入数据

1.导包
在顶部class的上面一行输入 import java.util.Scanner;

2.创建键盘录入对象
在主方法中输入 Scanner sc = new Scanner(System.in);

3.通过对象获取数据
格式 int x = sc.nextInt();

import java.util.Scanner;
class  Demo{
  public static void main(String[] args) {
  	Scanner sc = new Scanner(System.in);
  	System.out.println("请输入一个整数:");
  	int x = sc.nextInt();
  	System.out.println(x);	
	}
}

三、if语句和switch语句

1. if语句:

格式一:
if(比较表达式或者是boolean类型的值) {
 	语句体;
 }

执行流程:
先计算比较表达式的值,看其返回值是true还是false
如果是true,就执行语句体;
如果是false,就不执行语句体;

 格式二:
  if(比较表达式) {
  	语句体1;
   }else {
  	语句体2;
 }

执行流程:
首先计算比较表达式的值,看其返回值是true还是false。
如果是true,就执行语句体1;
如果是false,就执行语句体2;

格式三:
if(比较表达式1) {	
	语句体1;
 }else if(比较表达式2) {	
	语句体2;
  }else if(比较表达式3) {
	语句体3;
 }
 ...
 else {
  语句体n+1;
 }

执行流程:
首先计算比较表达式1看其返回值是true还是false,
如果是true,就执行语句体1,if语句结束。
如果是false,接着计算比较表达式2看其返回值是true还是false,
如果是true,就执行语句体2,if语句结束。
如果是false,接着计算比较表达式3看其返回值是true还是false,

如果都是false,就执行语句体n+1。

1. switch语句:

switch语句的格式:
switch(表达式){
	case 值1:
		语句体1;
		break;
	case 值2:
		语句体2;
		break;
	case 值3:
		语句体3;
		break;
	....
	default:	
		语句体n+1;
		break;
 }

switch语句的格式解释:
表达式的取值:byte,short,int,char
case后面跟的是要和表达式进行比较匹配的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,可以结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容

注意:
1.break可以省略,但是结果可能不是我们想要的,会出现case穿透。建议不要省略
2.default一定要在最后吗?不是,可以在任意位置。建议在最后
3.case穿透:执行完某条case语句后,没有break终止,所以继续执行下面的语句,直到遇到break才终止执行

四、浅谈if语句和switch语句的区别

if语句:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句:
针对几个常量值的判断

你可能感兴趣的:(JavaSE基础)