java流程控制(2)

switch 多选择结构

switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。

**switch **语句中的变量类型可以是:

byte、short、int、char

从java SE 7开始,支持String类型

switch 句型

public class SwitchDemo01 {
public static void main(String[] args) {
//case穿透 //switch 匹配一个具体的值
char grade =‘C’;

  switch (grade){
      case 'A':
          System.out.println("优秀");
          break;//可选
      case 'B':
          System.out.println("良好");
          break;//可选
      case 'C':
          System.out.println("及格");
          break;//可选
      case 'D':
          System.out.println("不及格");
          break;//可选
      default:
          System.out.println("未知等级");
  }

}

结果:没加break 输出结果会是:及格、和不及格(case具有穿透性)

​ 加了break会跳出,没有往下执行。

循环结构

while循环

do…while循环

for循环

(1)while循环

结构:

while(布尔表达式){

//循环内容

}

只要布尔表达式为真,就会一直循环下去

多数情况下是会让循环停止下来我们需要一个表达式失效来结束循环

**例题:**求1+2+3+…+100之和

public static void main(String[] args) {
    int i=0;
    int sum=0;
    while (i<=100){
        sum=sum+i;
        i++;
    }
    System.out.println(sum);
}

(2)do While

结构:

do{

//代码 语句

}while(布尔表达式);

与while 循环区别:

while先判断再执行,不满足条件不能进入循环

do-while保证循环体至少被执行一次

例子

public static void main(String[] args) {
    int a =0;

    while (a<0){//没满足条件,不进入循环(先判断,再执行)
        System.out.println(a);
        a++;
    }
    System.out.println("===================");
    do {//满不满足,都先执行,再判断
        System.out.println(a);
        a++;
    }while (a<0);

}

(3)For循环

结构:

for (初始化;布尔表达式;更新){

//代码语句

}

几点说明

最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以说空语句。

然后监测布尔表达式的值。如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。(也可以为空)

再次检测布尔表达式。循环执行上面的过程。

for( ; ; i++)//死循环

例题

1.计算0到100之间的奇数和偶数之和

public class ForDemo02 {
    public static void main(String[] args) {
       //突破点在于鉴别奇偶数
        int oddSum=0;
        int evenSum=0;
        for (int i = 0; i < 100; i++) {
            if (i%2!=0){
                oddSum+=i;
            }else {
                evenSum+=i;

            }
        }
        System.out.println("奇数和为:"+oddSum);
        System.out.println("偶数和为:"+evenSum);
        }
}

2.输出1-1000之间能被5整除的数,每输出3个换一行

public class ForDemo03 {
    public static void main(String[] args) {
        for (int i = 0; i <=1000; i++) {
            if (i%5==0){
                System.out.print(i+"\t");
            }

            if (i%(5*3)==0){
                System.out.println();
                System.out.print("\n");
                //print 输出不会换行
                //println 输出换行
            }

        }
    }

break、continue的区别:

break例子

public class BreakDemo01 {
    public static void main(String[] args) {
        int i=0;
        while (i<100){
            i++;
            System.out.println(i);
            if (i==30){
                break;//break 会退出整个循环,后面的print还是可以打印
            }
        }
        System.out.println(123);//还可以打印
    }
}

continue例子

public class ContinueDemo01 {
    public static void main(String[] args) {
        int i=0;
        while (i<100){
            i++;
            if (i%10==0){
                System.out.println();
                continue;//用来跳过某些条件,回到循环开始的地方。
            }
            System.out.println(i);
        }
    }
}

break用于强行退出循环,不执行循环中剩余的语句。

continue用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环 的判定。


文章仅是作者学习笔记,如有不足欠缺,请谅解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值