首页 > 代码库 > Java学习笔记之:Java流程控制

Java学习笔记之:Java流程控制

一、介绍

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

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

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

  Java有两种分支结构:

  • if语句
  • switch语句

  Java中有三种主要的循环结构:

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

二、笔记

package com.hgd.study2;import java.util.Scanner;/** * java的流程控制:顺序结构 分之机构 循环结构 *  * @author HuTiger 顺序结构:通过debug模式可以看出java程序的运行时顺序结构的 *  *         分支结构:if语句 * */public class ProcessControl {    public static void main(String[] args) {        // IfStudy();        // SwitchCaseStudy();        // WhileStudy();    }    /*     * IF语句     */    private static void IfStudy() {        /*         * 根据条件表达的世界(true||false)来判断是否进入语句块 if(条件表达式){ 语句块 } 继续执行后面的语句         */        int i = 100;        if (i > 60) {            System.out.println(i);        }        System.out.println("后面需要执行的语句");        /*         * if else 语句         */        // system.in就是标准输入,可以获取从键盘输入的值        // 通过scanner(jdk提供给我们的工具)来处理获取到的数据        System.out.println("请输入分数!");        Scanner sc = new Scanner(System.in);        int j = sc.nextInt();// 把用户输入的数赋值给j        System.out.println("控制台获取到的值是:" + j);        if (j > 60) {            System.out.println("通过");        } else {            System.out.println("没通过");        }        System.out.println("当if else 执行后需要执行的内容");        /*         * if else if else if ...else         */        // 场景:将一个5(score)分制分为 :5分的评价等级A 4==B 3==C 其他是D        Scanner sca = new Scanner(System.in);        int score = sca.nextInt();        if (score >= 0 && score <= 5) {            if (score == 5) {                System.out.println("A");            } else if (score == 4) {                System.out.println("B");            } else if (score == 3) {                System.out.println("C");            } else {                System.out.println("D");            }        } else {            System.out.println("输入不合法");        }        /*         * 练习:百分制系统 90-100 优秀 75-89 良好 60-74 合格 其他 不合格         */        Scanner scan = new Scanner(System.in);        int score1 = scan.nextInt();        if (score1 >= 0 && score1 <= 100) {            if (score1 >= 90 && score1 <= 100) {                System.out.println("优秀");            } else if (score1 >= 75) {                System.out.println("良好");            } else if (score1 >= 60) {                System.out.println("合格");            } else {                System.out.println("不合格");            }        } else {            System.out.println("输入不合法");        }    }    /*     * switch case     */    private static void SwitchCaseStudy() {        /*         * 分支语句:switch case key:需要比较的表达式 value:与表达式进行比较的值         * 执行流程:如果key和value比较的结果为true,那么将执行case部分的代码,case部分可以有多个 类似于else if 部分         * 区别是key和value之间的比较只能是== default部分是不满足以上任何去执行的代码 ,类似于else         *          * switch 后面括号中的表达式的值必须是符合byte,char,short,int类型的常量表达式 jdk1.7以后可以使用string         * ,而不能用浮点型或long类型         *          * switch(key) { case value: break; default: break; }         */        // 场景:将一个5(score)分制分为 :5分的评价等级A 4==B 3==C 其他是D        Scanner sc = new Scanner(System.in);        int score = sc.nextInt();        switch (score) {        case 5:            System.out.println("A");            break;// 标准写法 break不能少 跳出当前语句块,如果没有break会直接进入下一个case语句        case 4:            System.out.println("B");            break;        case 3:            System.out.println("C");            break;        default:            System.out.println("D");            break;        }    }    /*     * while 循环和do while     */    private static void WhileStudy() {        /*         * 执行流程: 当条件表达式为true的时候进入代码块,执行需要执行的代码 当条件表达式为false的时候执行后面的语句         *          * while(条件表达式){ 需要执行的代码部分 } 后面的语句         */        /*         * 场景:输入1-100的整数分析:给输出的值一个变量I,当i在1-100之间的时候输出         */        int i = 1;// 循环的起点        while (i <= 100) {            System.out.println(i);            // 给出循环的步长            i++;        }        System.out.println("打印结束");                        /*         * do while         *          * do{         * }while(条件表达式)         */                int a=1;        do{//语句块中的内容无论条件是否满足都会先执行一次            System.out.println(a);            a++;        }        while(a<=0);            }    /*     * for循环     */    private static void ForStudy() {        /*         * 场景:打印1-100 int i=1是循环的起点 i++ 循环的补偿 i<=100 循环的条件         */        for (int i = 1; i <= 100; i++) {            System.out.println(i);        }        System.out.println("打印结束");    }}

 

Java学习笔记之:Java流程控制