一、break,continue,return的使用
1、break; 使用在switch语句和循环语句中
break跳出多层循环的使用,带标签的跳出。
2、continue; 只能使用在循环语句中
3、return; 相当于结束了main方法,学完方法后,return作为定义方法的最后一句,表示方法结束返回值给调用者。
4、举例说明:
import java.util.Scanner; public class ControlDemo1 { public static void main(String[] args) { //不可以单独使用 // break; //创建键盘录入对象 Scanner sc = new Scanner(System.in); boolean flag = true; while (flag){ System.out.println("请输入一个数字(1-7):"); int number = sc.nextInt(); switch (number){ case 1: System.out.println("星期一"); flag = false; break; case 2: System.out.println("星期二"); flag = false; break; case 3: System.out.println("星期三"); flag = false; break; //结束switch选择语句。 case 4: System.out.println("星期四"); flag = false; break; case 5: System.out.println("星期五"); flag = false; break; case 6: System.out.println("星期六"); flag = false; break; case 7: System.out.println("星期日"); flag = false; break; default: System.out.println("输入的数据有误,请重新输入!"); break; } } System.out.println("=============================="); //循环打印1-10,在输出3的时候break一下 for(int i=1;i<11;i++){ System.out.println(i); if(i==3){ break; //break的作用是结束整个循环 } }
5、在九九乘法表的过程中,当内循环是4的时候,我们break一下。如果想在循环嵌套中使用break结束最外层循环怎么办呢?java中提供了一个带标签的break。
public class ControlDemo2 { public static void main(String[] args) { // for (int i = 1; i <= 9; i++) { // for (int j = 1; j <= i; j++) { // if(j==4){ // break; //单独使用的时候,结束的是离它最近的那个循环,就是跳出单层循环 // } // System.out.print(i + "*" + j + "=" + (i * j) + "\t"); // } // System.out.println(); // } System.out.println("================================="); wc:for (int i = 1; i <= 9; i++) { nc:for (int j = 1; j <= i; j++) { if(j==4){ break wc; //单独使用的时候,结束的是离它最近的那个循环,就是跳出单层循环 } System.out.print(i + "*" + j + "=" + (i * j) + "\t"); } System.out.println(); } } }
6、控制流程语句:continue:
return:
public class ContrlDemo3 { public static void main(String[] args) { //在打印1-10过程中,打印3之前我们continue一下 for(int i=1;i<=10;i++){ if(i==3){ continue; //跳出当次循环,继续执行后面的循环。 } System.out.println(i); } System.out.println("===========将continue改成return=================="); //在打印1-10过程中,打印3之前我们continue一下 for(int i=1;i<=10;i++){ if(i==3){ return; //结束main方法,结束程序执行,正常情况下,return在方法中使用,我们马上会说到 } System.out.println(i); } System.out.println("================================================="); System.out.println("HelloWorld"); } }
7、小芳的妈妈每天给她2.5元,她都会存起来,但是,每当这一天是存钱的第五天或者5的倍数的话,她都会去花6元。请问经过多少天,小芳才可以存到100?
分析:
1、由于存钱都是每天会发生的内容,所以我们用循环去解决
又由于我们学过了for循环和while循环
因为不知道要存多少天钱,所以我们采用while循环
2、定义一个变量接收存钱的天数
public class ControlTest { public static void main(String[] args) { //定义变量代表存储的天数 int day = 0; //定义另一个变量表示存储的金额 double money = 0; while (money <= 100) { day = day + 1; money = money + 2.5; //每当这一天是存钱的第5天或者5的倍数的话, 她都会花去6元钱 if (day % 5 == 0) { money = money - 6; } } System.out.println("=================================="); System.out.println("第" + day + "天的时候,存到了" + money + "元"); } }