循环语句(day05)
今天学习项目:while,do-while,for
①while
while
格式:
初始化语句;
while(比较表达式){
循环体;
条件控制语句;
}
初始化语句(定义变量):循环结构什么时候开始,也用于记录循环次数(一条或多条)
条件判断语句:决定了循环什么时候结束(结果为boolean的表达式)
循环语句:循环结构中反复执行的事情(任意语句)
条件控制语句:通过改变变量的值来控制循环次数(常见操作i++,i–等)
②do-while
格式:
初始化语句;
do{
循环体;
条件控制语句;
}while(比较表达式);
差别
①while:先判断再执行
②do-while:先执行再判断(针对于第一次判断结果为false)
例子:
import java.util.Scanner;
//do-while 案例 背书
public class Dowhitedemo {//需求:背书情况分析
public static void main(String[] args) {
Scanner str = new Scanner(System.in);
String i,w;
do {
System.out.println("老师:小明观沧海会背了吗?你就给我答会不会");
i=str.next();//初始化语句
if (i.equals("不会"))
{
System.out.println("老师:滚去抄一万遍");
}else if(i.equals("会")){
System.out.println("老师:那你给我背");
w=str.next();
if(w.equals("东临碣石,以观沧海。水何澹澹,山岛竦峙。树木丛生,百草丰茂。秋风萧瑟,洪波涌起。日月之行,若出其中;星汉灿烂,若出其里。幸甚至哉,歌以咏志。")){
System.out.println("老师:牛啊,我的明。你可以回家了");
}
}else{
System.out.println("老师:你就回答会不会,瞎几把说啥");
}
}while (i.equals("不会"));
}
}
③for
格式:
for(初始化语句;比较表达式;条件控制语句){
循环体
}
注意:
小括号中三部分可以不写,但是这三部分的位置要留来
区别
for的场景:有明确的循环次数
while的场景:没有明确的循环次数
package day05;
//酒桌游戏:敲七,遇到数字7和含有7的数字敲一下桌子,设计程序求所有要敲桌子的数字
public class QiaoSeven {
public static void main(String[] args) {
int i=1;
for(;i<=100;i++)
{
if(i%7==0){
System.out.println(i);
}else if (i%10==7 || i/10==7){
System.out.println(i);
}
}
}
}
**设置死循环:
while(true)
for(;;)
语句嵌套
概述:
语句中还有语句
每个语句的范围通过{}确定①break:结束当前语句
②continue:跳过当前的执行,开始下一次
package day06;
//break案例
public class DemoBreak {
public static void main(String[] args) {
for (int i=1;i<=10;i++)
if(i<=5){
System.out.println(i);
break;//增加一个break执行第一此就结束运行
}
}
}
package day06;
//continue案例
public class Demo02 {
public static void main(String[] args) {
for(int i=1;i<=10;i++)
{
if (i<=5){
System.out.println(i);
continue;//跳过当前的执行,开始下一次
}
}
}
}
小练习:
1.Java中有两种类型的选择结构的控制语句,分别是if语句和 。
2.在Java JDK1.7之前,switch只能支持byte、short、char、int或者其对应的封装类以及Enum类型。在JDK1.7中又加入了
类型。
3.for循环的语法格式是for (表达式1;表达式2;表达式3) {循环体},其中在整个循环过程中只执行一次的部分是 。
4.在循环结构中,如果想跳出循环体,结束整个循环结构可以使用 语句。
5._______语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。即只结束本次循环,而不是终止整个循环的执行。
6.使用Math.random( )返回带正号的 double值,该值大于等于0.0且小于1.0。使用该函数生成[30,60]之间的随机整数的语句是…
答案:
1.switch语句
2.String
3.表达式1
4.break
5.continue