java入门第一季_1.5_流程控制语句

来源:互联网 发布:网络电视tv版哪个好 编辑:程序博客网 时间:2024/05/22 05:29

既然选择了远方,便只顾风雨兼程。

流程控制语句

  • if
  • switch
  • while
  • do…while
  • for
  • break
  • continue

if

package com.zhb.demo;public class Test1 {    public static void main(String[] args) {        int num = 2;        if(num % 2 == 0){            System.out.println("num 是 偶数");        }else{            System.out.println("num 不是 偶数");        }    }}

输出结果:
num 是 偶数

假设有一个题目是判断一个数字是不是奇数,如果是奇数,就输出是奇数,不是的话就输出不是奇数。你看下面的代码是否正确?

package com.zhb.demo;import java.util.Scanner;public class Test1 {    public static void main(String[] args) {        int num;        Scanner in =new Scanner(System.in);        System.out.println("请输入一个数");        num = in.nextInt();        if(num % 2 ==1){            System.out.println("num 是 奇数");        }else{            System.out.println("num 不是 奇数");        }    }}

其实这段代码如果用户输入的值是正数,确实没问题。如果用户输入-1呢?-2呢?-3呢?
要明白一点 -1也是奇数


switch

switch要注意一下几点

  • switch后面小括号中表达式的值必须是整数型或字符型
  • case后面的值可以是常量数值,也可以是常量表达式,但不能是变量或带有
    变量的表达式
  • case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续
    执行下一个case 块的内容,直到遇到break语句 或switch 语句结束
  • switch 语句可以包含一个default分支,该分支必须是switch的最后一个分支,
    default在没有case 语句的值和变量相等时执行。
public class Test1 {    public static void main(String[] args) {        int num = 1;        switch (num) {        case 1:            System.out.println("奖励apple6ps");        case 2:;        case 3:             System.out.println("奖励铅笔");        case 4:            System.out.println("奖励棒棒糖");        default:            System.out.println("打手");            break;        }    }}

运行结果
奖励apple6ps
奖励铅笔
奖励棒棒糖
打手

我们对上面的程序进行修改一下

public class Test1 {    public static void main(String[] args) {        int num = 1;        switch (num) {        case 1:            System.out.println("奖励apple6ps");        case 2:;        case 3:             System.out.println("奖励铅笔");            break;        case 4:            System.out.println("奖励棒棒糖");        default:            System.out.println("打手");            break;        }    }}

此时会输出什么呢?


while

while(判断条件){    循环操作}

执行过程

1.判断 while后的 条件是否成立
2.当条件成立时,执行循环内的操作代码,然后重复 1.2,直到循环条件不成立为止

特点:* 先判断,后执行 *

输出1到5

public class Test1 {    public static void main(String[] args) {      int i=1;      while(i<=5){          System.out.print(i+"  ");          i++;      }    }}

do…while

do{    循环操作}while(判断条件)

执行过程:
1.先执行一遍循环操作,然后判断循环条件是否成立
2.如果条件成立,继续执行1.2 。直到循环条件不成立

下面的执行结果为1

public static void main(String[] args) {      int i=1;      do{          System.out.println(i);      }while(i>100);    }

for

for(循环变量初始化; 循环条件; 循环变量变化){    循环操作}

执行过程

1.执行循环变量初始化部分,设置循环的初始状态,此部分只执行一次
2.进行循环条件的判断,为ture,则执行循环体内代码;如果为false,直接退出循环
3.执行循环变量变化部分,改遍循环变量的值,以便经行下一次判断
4.依次执行 2.3.4 直到退出循环

public static void main(String[] args) {     for (int i = 0; i < 100; i++) {        System.out.println("这是for循环");    }    }

看看下面这段代码输出什么

public class T2 {      static boolean foo(char c) {          System.out.print(c);          return true;      }      public static void main(String[] argv) {          int i = 0;          for (foo('A'); foo('B') && (i < 2); foo('C')) {              i++;              foo('D');          }      }  }

结果是(ABDCBDCB)


break

跳出循环

public static void main(String[] args) {     for (int i = 1; i < 10; i++) {        if(i % 2 ==0){            break;        }        System.out.println(i);    }    }

此时只输出 1


continue

让程序 立刻跳转到下一次循环的迭代

    public static void main(String[] args) {     for (int i = 1; i < 10; i++) {        if(i % 2 ==0){            continue;        }        System.out.print(i);    }    }

输出结果
13579


0 0
原创粉丝点击