一 switch case 的用法举例
- switch 的条件只能是数字、字符、字符串、枚举
- Demo:输入一到十二月输出对应的英文单词
public class Text2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入月份");
int month = input.nextInt();
String wordOfMonth;
switch (month) {
case 1:
wordOfMonth = "January";
break;
case 2:
wordOfMonth = "February";
break;
case 3:
wordOfMonth = "Marh";
break;
case 4:
wordOfMonth = "April";
break;
case 5:
wordOfMonth = "May";
break;
case 6:
wordOfMonth = "june";
break;
case 7:
wordOfMonth = "july";
break;
case 8:
wordOfMonth = "August";
break;
case 9:
wordOfMonth = "September";
break;
case 10:
wordOfMonth = "October";
break;
case 11:
wordOfMonth = "November";
break;
case 12:
wordOfMonth = "Decenmber";
break;
default:
wordOfMonth = "输入错误";
break;
}
System.out.println(wordOfMonth);
input.close();
}
}
二 循环结构案例
1:while循环举例
- 对于 while 语句而言,如果不满足条件,则不能进入循环。
public class Text5 {
public static void main(String[] args) {
int i=0;
while (i<10) {
System.out.println("Hello,word!"); i+=1;
}
System.out.println("结束");
2.do while 循环
- do…while 循环至少会执行一次。
- 布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false。
int sum = 0;
int i = 0;
while(i<=100){ if(i%3==0||i%5==0||i%7==0) { sum+=i; }
i+=1; } System.out.println(sum);
do {
sum += i;
i += 1;
} while (i <= 100);
System.out.println(sum);
3.for循环
- for循环中两个分号一定不能少;for中定义的i只能在该条for循环语句中使用
- 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
for(i=1;i<=100;i++){
sum+=i;
}
System.out.println(sum);
三.两个关键字
1.break
- break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
- break 跳出最里层的循环,并且继续执行该循环下面的语句。
- 示例
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
if( x == 30 ) {
break;
}
System.out.print( x ); System.out.print("\n");
}
}
}
以上实例编译运行结果如下:
10 20
2.continue
- continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
- 在 for 循环中,continue 语句使程序立即跳转到更新语句。
- 在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
- 示例
public class Test { public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
if( x == 30 ) {
continue; }
System.out.print( x );
System.out.print("\n"); }
}
}
运行结果:10 20 40 50
四.分支、循环结构综合案例
1.计算机出一个随机数(1-100),猜数,若猜大了或者猜小了给出提示,若猜对了,输出随机数
import java.util.Scanner;
public class Text6 {
public static void main(String[] args) {
int sj = (int) (Math.random() * 100 + 1);
System.out.println("随机整数已经产生,请开始猜数(1--100)");
Scanner input = new Scanner(System.in);
int cs = input.nextInt();
int num = 0;
while (cs > sj) {
System.out.println("太大了,请继续猜");
int i = input.nextInt();
cs = i;
num++;
}
while (cs < sj) {
System.out.println("太小了,请继续猜");
int j = input.nextInt();
cs = j;
num++;
while (cs > sj) {
System.out.println("太大了,请继续猜");
int i = input.nextInt();
cs = i;
num++;
}
}
if (cs == sj) {
if (num <= 1) {
System.out.println("我靠,一次就猜出来了!天选之人!!!随机数是"+sj);
} else if ((num+1)<= 3) {
System.out.println("厉害了我的哥!猜了" + (num+1) + "次,随机数是"+sj);
} else if ((num+1)<= 7) {
System.out.println("还行!猜了" + (num+1) + "次!随机数是"+sj);
} else {
System.err.println("妈的智障!猜了" + (num+1) + "次!随机数是"+sj);
}
}
input.close();
}
}