一:switch语句
从上至下,逐个case值判断,直到找到对应的case值为止;如果都找不到,则执行default;
注意事项:
1:switch语句只能写 byte,short,int,char,String,枚举类型的数据;
2:default语句的位置是任意的;
3:如果不写break关键字会发生穿透现象
穿透现象就行从选中的case开始,一直向下执行,不再判断其他case值,直到遇到breaak为止,没有break就穿透到switch的结尾;`
package com.heima.Test01;
import java.util.Scanner;
public class Switch {
public static void main(String[] args) {
System.out.println("在键盘上输入一个月份,系统返回此月份是什么季节");
Scanner sc = new Scanner(System.in);
int month = sc.nextInt();
switch(month){
case 12:
case 1:
case 2:
System.out.println(month+"月是冬季");
break;
case 3:
case 4:
case 5:
System.out.println(month+"月是春季");
break;
case 6:
case 7:
case 8:
System.out.println(month+"月是夏季");
break;
case 9:
case 10:
case 11:
System.out.println(month+"月是秋季");
break;
default:
System.out.println("你家有" + month + "月啊");
}
}
}
二:循环
1.for循环:
格式
for (初始化语句;条件判断语句;条件控制语句) {
循环体语句;
}
例如:
//打印10次HelloWord
for (int i = 0; i < 10; i++) {
System.out.println("HelloWord");
}
2.while循环:
初始化语句;
while (条件判断语句) {
循环体语句;
条件控制语句;
}
例如
> //打印10次HelloWord
> int i =0;
> while(i<10){
> System.out.println("HelloWord");
> i++;
> }
3: do…while循环:
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
例如:
> //打印10次HelloWord
> int i = 0;
> do{
> i++;
> System.out.println("HelloWord");
> }while(i<10);
三种循环的区别:
1: for和while是先判断条件,后执行循环体,而do while循环是先执行循环体再判断条件
2: for循环结束后,for中的变量不能继续使用了,而while结束后,变量可以继续使用;
循环嵌套:在循环体中写循环就是循环嵌套
特点 外层循环变量变化一次,内层循环循环一圈
跳转循环:
continue 忽略一次循环
break 打破循环
三:Random
作用: 生成一个指定范围内的随机数
使用步骤:
1: 导包 import java.util.Random
2:创建对象 Random r=new Random();
3:调用方法 int xxx=r.nextInt(最大范围值);
注意事项:
默认情况下生成的数字包含0不包含指定的最大值.
拓展:猜数字小游戏
1: 生成一个随机数
2:让用户输入要猜的数字,共有10次机会
3:使用用户输入的数字与生成的随机数比较
4:根据比较的大小关系,打印相应的提示,如果猜对了,使用break打破循环;
> package com.heima.Test01; import java.util.Random; import
> java.util.Scanner;
>
> public class B{
> public static void main(String[] args) {
> Random r = new Random();
> int num = r.nextInt(100)+1;
> System.out.println("请你输入一个数字");
>
> >
>
>
> int count = 0;
> > for (int i = 0; i < 10; i++) {
> >
> > Scanner sc = new Scanner(System.in);
> > int input = sc.nextInt();
> > count++;
> > if(input>num){
> > System.out.println("您输入的数值过大");
> > }else if(input < num){
> > System.out.println("您输入的数值过小");
> > }else{
> > System.out.println("恭喜您,答对了");
> > break;
> > }
> > }
> >
> > if(count>10)
> > System.out.println("抱歉,您的机会用完了");
> > } }