1.Scanner方法
1.导包
import java.util.Scanner;
2.创建一个Scanner类型的变量|引用
Scanner sc = new Scanner(System.in);
3.使用功能
接收用户键盘输入的整数
引用.nextInt();
引用.nextByte();
引用.nextShort();
引用.nextLong();
接收用户键盘输入的小数
引用.nextDouble();
接收用户键盘输入的字符串
引用.next();
从有效字符开始接收,遇到空格停止接收,对空格不识别,遇到enter功能结束
引用.nextLine();
接收用户输入一整行的字符内容,包括空格,遇到enter键结束功能
以上功能遇到回车键结束功能
4.关闭资源
引用.close()
2.Random方法
1.导包
import java.util.Random;
2.创建Random类型的引用
Random ran = new Random();
3.使用功能
随机整数
引用.nextInt(); 生成int范围内的随机整数
引用.nextInt(整数n); 生成[0,n)之间的随机整数
随机小数
引用.nextDouble() 生成[0.0,1.0)随机小数
4.总结公示
[0,n] ==> 引用.nextInt(n+1)
[min,max) ==> 引用.nextInt(max-min)+min
推到过程:
引用.nextInt(max) -> [0,max)
引用.nextInt(max)+min -> [0,max)+min -> [min,max+min)
引用.nextInt(max-min)+min -> [0,max-min)+min -> [min,max)
[min,max] ==> 引用.nextInt(max-min+1)+min
3.If语句
if 语句判断结构 (条件表达式类型只能为boolean类型)
单选泽|单分支: 满足条件就可以执行{}中的语句体,不满足条件不执行
if(条件表达式){
满足条件执行的语句体;
}
执行流程:
1.执行条件表达式,得到一个boolean类型的结果
2.如果结果为true,执行{}中的语句体
3.如果结果为false,不执行,直接跳过if单选择结构
双选择|双分支
if(条件表达式){
满足条件执行的语句体;
}else{
不满足条件执行的语句体;
}
双选择可以存在结果,而单选择不一定有结果
多选择|多分支
if(条件表达式1){
满足条件1执行的语句体1;
}else if(条件表达式2){
满足条件2执行的语句体2
}else if(条件表达式3){
满足条件3执行的语句体3
}....
else{
以上条件都不满足,执行的语句体n;
}
执行流程:
从条件表达式1开始判断,满足哪一个条件,执行对应的语句体,如果都不满足,如果存在else就执行else的语句体
如果不满足else,就跳过不执行
但是只能最多执行一个语句体
else可以根据需求添加
4.Switch语句
witch : 定值判断
语法:
switch(表达式){
case 定值1:
语句体1;
break;
case 定值2:
语句体2;
break;
...
default:
语句体;
break;
}
说明:
表达式 : 变量,表达式
类型要求: byte short int char jdk1.7->字符串 jdk1.5->枚举类型
case :
跟定值->数据值,字面常量值
break : 结束switch语句,如果没有break会遇到case穿透问题
case穿透 : 从满足定值执行的语句体之后如果没有遇到break,继续向下执行下面的语句体,无论case是否满足,
直到遇到下一个break或者switch语句的结束而结束
default : 相当于if..else中的else
如果以上case都不满足,执行default
位置可以修改,但是一般定义在最后,如果修改位置切换添加break,否则会发生case穿透
执行流程:
1.计算表达式,得到一个结果
2.与case后面的定值做判断,如果相等,执行对应的语句体,执行break结束,如果不相等,继续向下判断
3.如果以上的所有case都不满足,执行default(可以定义可以不定义)
5.For语句
for 循环:
for(条件初始化;条件判断;条件变化){
重复执行的代码;
}
说明 :
条件初始化 : 声明一个变量然后第一次赋值
作用后续可以进行判断和使用,决定循环执行的次数,可以在循环体中使用变量的值
条件判断 : 对第一步声明的变量条件做判断,决定循环是否执行循环体还是结束循环
条件变化 : 变量值自身的改变
执行流程:
1.条件初始化 int i=1;
2.条件判断 i
如果为false,结束循环
如果为true,执行本次{}中的循环体语句
3.条件变化 i++
从第二次开始,重复执行2,3步骤



