位运算符
&: 两个2进制的操作数,同一位数的两个数如果有一个为0结果就为0,两个都为1才是1.
| : 两个2进制的操作数,同一位数的两个数如果有一个为1,两个都为0才是0.
^ : 两个2进制的操作数,同一位数的两个数如果相同为0,不同为1.
位移运算符
<< 左移 :把第一个二进制的操作数向左移动第二个操作数个位数,空余的位数补0,最终得到二进制的值–>转为十进制 m << n ==> m*2^n
>> 右移 :把第一个二进制的操作数向右移动第二个操作数个位数,移动出的位数不要,只保留剩下的位数的值–>转为十进制 m >> n ==> m/2^n
引用数据类型
- Scanner类:帮住接收用户键盘输入的内容
1) 导包 指定Scanner类的位置 import -> java.util.Scanner.(类的上面使用import导包)
2) 创建Scanner的对象实例.
3) 调用方法:变量=引用.功能名字();
功能名字:
next类型 | nextInt |nextByte | nextDouble
◎.next() 接收字符串类型的数据以上一系列的next功能,从有效字符开始接收,遇到空格,tab就不接收了,直到遇到enter结束功能 ,enter不会接收
◎.nextLine() 接收一整行的数据,接收enter结束,enter会被接收
- Random类:产生随机数
1)导包 import java.util.Random
2).创建Random类型的变量
3).使用功能
nextInt() 随机产生一个int范围内的随机数
nextInt(整数n) 随机产生一个 [0,n)整数
nextDouble() 产生[0,1)之间的随机小数
公式:
[min,max) ran.nextInt(max-min)+min;
[min,max] ran.nextInt(max-min+1)+min;
3.Math 数据类
不需要导包:java.lang下的直接类不需要导包
Math.random() 功能名字 [0,1)随机小数
公式:
[0,max) 随机整数 (int)(Math.random()*max)
[0,max] 随机整数 (int)(Math.random()*(max+1))
[min,max) 随机整数 (int)(Math.random()*(max-min)+min)
[min,max] 随机整数 (int)(Math.random()*(max-min+1)+min)
Math.round(数据) 四舍五入
Math.abs(数据); 绝对值
Math.sqrt(数据); 平方根 double类型的值
流程控制语句
1.顺序结构: 从上倒下,从左到右
2.选择结构: 满足某些条件执行对应的语句
3.循环结构: 重复执行一些语句体
选择结构: if..else switch..
单选择|单分支:
if(条件表达式){
语句体;
}
双选择|双分支:
if(条件表达式){
语句体1;
}else{
语句体2;
}
多选泽|多分支:
if(条件表达式1){
语句体1
}else if(条件表达式2){
语句体2
}else if(条件表达式3){
语句体3
}
….
else{
语句体n;
}
switch语句:定值判断
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
….
default:
语句体;
break;
}
表达式: 一般为变量|表达式|定值(不使用)
byte,short,char,枚举(1.5),字符串(1.7)
◎case:表达式的结果需要与case后的值进行判断,如果满足条件就执行后语句体,如果不满足条件,继续向下面的case进行判断.
◎break:结束swtich,防止case穿透:如果满足条件的case后的语句体后没有break,下面的case不再判断.直接执行他们的语句体,直到遇到下一个break,或者switch的结束才结束.
◎default: 与if的else很像,都是以上case 都满足,执行default中的内容可以写在switch语句的任何位置,一般放在最后,放在最后break可以省略,如果放在其他位置省略break会发生case穿透.
循环
1.for循环
for(条件初始化 ;条件判断 ;条件变化 ){
循环体语句;
}
条件初始化 :声明一个变量并赋值 int i=0;
条件判断: 对i条件的值进行判断,判断是否满足我让你循环的条件,如果满足条件,继续执行循环体语句,不满足条件结束循环
条件变化: i自身值的改变,如果不改变就会发生死循环(永远执行的循环)
执行流程:
1.执行条件初始化
2.执行条件判断,值为boolean类型的表达式
3.如果值为false,循环结束,值为true,执行循环体语句
4.执行条件变化:从第二次循环开始,重复执行第2,3,4步
注意: 循环体语句只有一句的时候,前后的{}可以省略