Java基础(I)流程控制

Posted guhun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础(I)流程控制相关的知识,希望对你有一定的参考价值。

     Java流程控制包括顺序控制、条件控制和循环控制

  • 顺序控制,就是从头到尾依次执行每条语句操作
  • 条件控制,基于条件选择执行语句,比方说,如果条件成立,则执行操作A,或者如果条件成立,则执行操作A,反之则执行操作B
  • 循环控制,又称为回路控制,根据循环初始条件和终结要求,执行循环体内的操作

    顺序结构只能顺序执行,不能进行判断和选择,因此需要分支结构

   分支结构:

  • if语句
  • if....else....
  • if.....else if....else if......
  • switch语句

    注意:if...else...条件的执行语句块{ }如果只有一条语句的话,那么这一对{ }可以省略;

            switch语句一旦满足case条件,就执行case的相应语句。如果没有break或者已经到结尾的话,会继续执行其下的case语句! case后的变量类型可以为byte,short,char,int,枚举,String且必须是常量或者值为常量的表达式

            do....while和while的区别是do...while循环至少会执行一次

            循环次数不确定的时候用while,循环次数确定的时候可以随机使用

            一般情况下,在无限循环内部要有程序终止的语句,使用break实现。若没有,那就是死循环

   循环结构:

  • while循环
  • do…while循环
  • for循环
  • foreach循环

     代码示例:

 

package processcontrol;

import java.util.Scanner;

public class ProcessControl {
    public static void main(String[] args) {
        // ifStudy();
        // switchStudey();
        //forStudy();
        //whileStudy();
        foreachStudy();
    }

    public static void ifStudy() {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入小名的期末成绩:");
        // 这里默认输入的是整数,不做详细判断
        int score = input.nextInt();
        if (score > 100 || score < 0) {
            System.out.println("奖励一辆BMW!");
        } else {
            if (score == 100) {
                System.out.println("您输入的数值有误!");
            } else if (score > 80 && score <= 99) {
                System.out.println("奖励一个台iphone5s!");
            } else if (score >= 60 && score <= 80) {
                System.out.println("奖励一本参考书!");
            } else {
                System.out.println("没及格,还想要奖励!");
            }
        }
    }

    public static void switchStudey() {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入小名的期末成绩:");
        // 这里默认输入的是整数,不做详细判断
        int score = input.nextInt();
        switch (score / 60) {
        case 1:
            System.out.println("及格");
            break;
        case 0:
            System.out.println("不及格");
            break;
        }
        /*
         * switch (score / 10) { case 10: case 9: case 8: case 7: case 6:
         * System.out.println("及格"); break; case 5: case 4: case 3: case 2: case
         * 1: case 0: System.out.println("不及格"); break; }
         */
    }

    public static void forStudy() {
        /*
         * 编写程序FooBizBaz.java,从1循环到150并在每行打印一个值,
         * 另外在每个3的倍数行上打印出“foo”,在每个5的倍数行上打印“biz”, 在每个7的倍数行上打印输出“baz”
         */
        for (int i = 1; i <= 150; i++) {
            System.out.print(i);
            if (i % 3 == 0) {
                System.out.print(" foo");
            }
            if (i % 5 == 0) {
                System.out.print(" biz");
            }
            if (i % 7 == 0) {
                System.out.print(" baz");
            }
            System.out.println();
        }
    }

    public static void whileStudy() {
        // 输出100以内的偶数
        /*
        int i = 1;
        while (i <= 100) {
            if (i % 2 == 0) {
                System.out.println(i);
            }
            i++;
        }
        */
        int i=1;
        do{
            if(i%2==0){
                System.out.println(i);
            }
            i++;
        }while(i<=100);
    }

    public static void foreachStudy() {
        int[] arr={2,3,4,5,6};
        for(int i:arr){
            System.out.println(i);
        }
    }
}

 

以上是关于Java基础(I)流程控制的主要内容,如果未能解决你的问题,请参考以下文章

Java基础流程控制和数组

java基础-控制流程语句

Java 核心技术卷 I控制流程大数值数组

Java开发技术栈:Java基础语法流程控制语句运算符

2.12号Java复习题目——Java 中的运算符和流程控制(基础知识)

阿花宝宝 Java基础笔记 之 流程控制