一.switch case结构(多条路)
1.语法switch(变量名){
case 常量1:
内容;
break;
case 常量2:
内容;
break;
.......
default:
内容;
}
- - -- 记:a.语法中常量1 2为整形常量
b.当变量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句 后面的语句,并依次执行后面所有case表达式中的语句;除非遇到break;会跳出switch 语句
c.如果变量与case中常量都不想等,则会执行default语句;default语句可以提前,但 需加break;语句
d.switch中变量的类型:byte,short,int,char,String,枚举
2.优点:效率高,结构清晰
缺点:只能对整数判断相等
二.循环
循环:可以反复多次执行的一段相同或相似代码
循环三要素:
循环变量的初始化
循环的条件(以循环变量为基础)
循环变量的改变
1.while结构:先判断后执行,有可能一次都不执行
语法:while(boolean){
语句块/循环体
}
-------执行过程-------
先判断boolean的值,若为true则执行语句块,
再判断boolean的值,若为true则再执行语句块,
再判断boolean的值,若为true则再执行语句块,
......
直到boolean的值为false时,while循环结束
2.do...while结构:先执行后判断,至少执行一次
语法:do{
语句块
}while(boolean)
------执行过程---------
先执行语句块,再判断boolean的值,若为true则
再执行语句块,再判断boolean的值,若为true则
再执行语句块,再判断boolean的值,若为true则
再执行语句块,再判断boolean的值,直到boolean的值为false时,do...while结束
3.for结构
语法:for(表达式1;表达式2;表达式3){
语句块
}
例子:int sum = 0; //存和
for(int a=1;a<=100;a++){
sum = sum+a; //累加
}
执行过程:
sum=0
a=1 sum=1
a=2 sum=1+2
a=3 sum=1+2+3
a=4 sum=1+2+3+4
...........
a=100 sum=1+2+3+4+...+99+100
a=101 false for循环结束
----记:a.语法中的表达式123分别是循环三要素,分别是循环变量的初始化,循环变量的条件, 循环变量的改变
b.使用语法时一定要注意变量的作用域,不要超过大括号(变量的作用域:从变量的声明 开始,到包含它最近的大括号结束 )
关于变量的选择:先看循环是否与次数有关,有关--用for 无关--用while或dowhile
小知识:Scanner接收用户输入的数据
import java.util.Scanner; //1.导入一个扫描仪
Scanner scan = new Scanner(System.in);//2创建新扫描器
变量类型 变量名=scan.next变量类型();扫描一个变量并赋值
Math.random()---创建随机数0.0到0.999999999999...
对其进行运算可对范围,类型进行转换
*1000---------------------0.0到999.9999999999
+1------------------------1.0到1000.999999999
(int)---------------------1到1000