Day05_Java
移位运算符:二进制的运算
<<:左移
舍掉高位,低位直接补0;相当于原数乘以对应2的位数次方
>>:带符号右移,算术右移
舍掉低位,在高位上补符号位,整数补0,负数补1
>>>:无符号右移,逻辑右移
舍掉低位,在高位上直接补0
步骤
1.遇到移位操作符,首先将数字转换为二进制的表示形式(补码)
2.再考虑是左移还是右移
3.在考虑补0还是补1
逻辑运算操作符
两侧都为布尔表达式(不然会报错)
&和|还可以二进制运算
&&:
false && false = false
false && true = false
true && true = true
||:
false || false = false
false || true = true
true || true = true
三目运算符
语法
布尔表达式? true的结果 :false的结果
例子:
int sorce = 65;
String result = score >=60?“及格”:“不及格”;
如何获得自己输入的数据?
1.Scanner
java.util.Scanner
因为是一个引用类型,使用前需要new对象
Scanner sc = new Scanner(System.in);
2.String[] args 等同于 String… args
在使用java命令运行时,空格,接要输入的参数,多个参数之间用空格隔开,可以装进args中,但是String类型的参数,需要按照要求做类型转换。
流程控制
判断
if...else
if(判断条件){
结果为true的操作
}else{
结果为false的操作
}
if(判断条件1){
}else if(判断条件2){
}else if(判断条件3){
}else{
}
if语句可以嵌套使用
if(){
if(){
if(){
}
}
}
switch...case
switch(变量){
case 值1;
表达式1;
break;
case 值2;
表达式2;
break;
case 值3;
表达式3;
break;
default;
代表以上取值之外的所有情况
表达式
break;
}
输入一个年份,判断是否闰年,输出当年的天数。
输入年份、月份、天数、判断那天是星期几
输入年份、月份、天数,得到一张日历
循环:
要素:初始化、循环的条件、迭代、循环体(重复执行的代码)
for循环
for(初始化;循环条件;迭代){
循环体
}
while循环
初始化
while(判断条件){
循环体
迭代
}
do 。。。while循环
初始化
do{
循环体
迭代
}while(循环条件)
初始化
while(判断条件){
循环体
迭代
}
do 。。。while循环
初始化
do{
循环体
迭代
}while(循环条件)