zoukankan      html  css  js  c++  java
  • Java基础:程序结构控制

    学习资料

    b站狂神说:https://www.bilibili.com/video/BV12J41137hu

    顺序结构

    顺序结构,按照从上到下的顺序一步步执行,最简单的算法结构

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午2:49
     * @Description: 顺序结构: 最简单的算法结构,从上至下运行
     */
    public class Sequential {
        public static void main(String[] args) {
            System.out.println(1); //1 先执行
            System.out.println(2); //2 后执行
        }
    }
    
    

    选择结构

    if选择结构

    当布尔表达式为空时,执行对应条件下的内容,其他将条件判断将与其无关

    package com.zy7y.struct;
    
    import java.util.Scanner;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午2:51
     * @Description: 选择结构: 语法 if(布尔值表达式){成立时运行}
     */
    public class Option {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("输入内容:");
            String input = scanner.nextLine();
            // 单结构,equals 判断字符串是否相等
            if (input.equals("hello")){
                System.out.println(input);
            }
    
            // 双选择结构
            System.out.println("输入数字:");
            int score = scanner.nextInt();
            if (score > 60){
                System.out.println("及格了");
            }
            else {
                System.out.println("不及格");
            }
    
            System.out.println("end");
    
            // 多选择结构
            System.out.println("请选择:");
            int userInput = scanner.nextInt();
            if (userInput == 1){
                System.out.println("你选择了1");
            }else if (userInput == 2) {
                System.out.println("你选择了2");
            }else if (userInput == 3){
                System.out.println("你选择了3");
            }else{
                System.out.println("没有此选择项");
            }
        }
    }
    

    switch选择结构

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午3:05
     * @Description: switch 选择结构
     */
    public class Switch {
        public static void main(String[] args) {
            // (值)
            switch ("zy7y"){
                // case 后面的值 与 switch(这个值)一致将进入对应语句快,打印后,执行break;结束语句
                case "zy7y1":
                    System.out.println("zy7y");
                    break;
                case "zy71":
                    System.out.println("zy71");
                    break;
                case "zyy1":
                    System.out.println("zyy1");
                    break;
                default: // 当上面条件不满足时执行 这块代码
                    System.out.println("没有找到符合的值,使用了默认值");
            }
    
        }
    }
    

    循环结构

    while循环

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午3:19
     * @Description: 循环结构 while, 先判断 在循环
     */
    public class CycleWhile {
        public static void main(String[] args) {
            // 打印1-100
            int intValue = 1;
            // while (布尔值表达式){布尔表达式为true时执行}
            while (intValue <= 100){
                System.out.println(intValue++);
            }
        }
    }
    

    do...while循环

    至少会执行一次; 先执行do{}的内容,在判断while()的内容

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午3:35
     * @Description: do while循环, 先执行 后判断
     */
    public class CycleDoWhile {
        public static void main(String[] args) {
            int i = 0;
            int sum = 0;
            do {
                sum += i;
                i++;
            }while (i <= 100);
            System.out.println(sum);
        }
    }
    

    for循环

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午3:42
     * @Description: for循环
     */
    public class CycleFor {
        public static void main(String[] args) {
            // 记录总和的值
            int sum = 0;
            for (int i = 0; i <= 100; i++) {
                    sum += i;
            }
            System.out.println(sum);
    
            // 死循环
    //        for (;;){
    //            System.out.println(1);
    //        }
    //        100.for 回车可以快速生成for (int i = 0; i < 100; i++){}
        }
    }
    

    for each

    jdk5的新特性,主要用于迭代数组,集合

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午4:19
     * @Description: 增强for循环
     */
    public class CycleForEach {
        public static void main(String[] args) {
            // 定义一个数组
            int[] intArray = {1,5,6,7,8,9};
            // 打印每一个值
            for (int number:intArray) {
                System.out.println(number);
            }
        }
    }
    

    break、continue

    break - 跳出当前语句块; continue - 终止当前循环,执行下次循环

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午4:27
     * @Description: break 跳出循环
     */
    public class CycleBreak {
        public static void main(String[] args) {
            for (int i = 0; i < 10; i++) {
                if (i == 1) {
                    // 当等于1时 将不在执行continue后面的代码,进入下次i ==2 的循环
                    continue;
                }
                if (i == 6) {
                    // 当i 等于 4 时跳转代码块
                    break;
                }
                System.out.println(i); // 0 2 3 4 5
            }
        }
    }
    

    练习

    package com.zy7y.struct;
    
    /**
     * @ProjectName: JavaSE
     * @PackageName: com.zy7y.struct
     * @Author: zy7y
     * @Date: 2020/8/14 下午3:54
     * @Description:
     */
    public class TopicFor {
        public static void main(String[] args) {
            // 计算0-100之间的奇数和偶数的和
            int oddSum = 0; // 接收奇数总和的变量
            int evenSum = 0;
            for (int i = 0; i <= 100; i++) {
                if (i % 2 == 0) {
                    evenSum += i;
                }else {
                    oddSum = oddSum + i;
                }
            }
            System.out.println("奇数总和:" + oddSum);
            System.out.println("偶数总和:" + evenSum);
    
            // 1-1000之间能被5整除的数,每行输出3个
            for (int i = 0; i < 1000; i++) {
                if (i % 5 == 0){
                    System.out.print(i + " ");
                }
                if (i % (5*3) == 0){
                    System.out.println();
                }
            }
    
            System.out.println();
    
            // 打印九九乘法表
    
            for (int i = 1; i <= 9; i++) {
                // 内层循环 j根据外层i来决定循环范围
                for (int j = 1; j <= i; j++) {
                    System.out.print(i+"*"+j +"="+(i*j) + "	");
    //                // 当外面的变量i 与 里面变量相等时 就该换行了
    //                if (i == j){
    //                    System.out.println();
    //                }
                }
                // 结束一行循环后,进行换行
                System.out.println();
            }
    
            // 打印三角形
    
            for (int i = 1; i <= 3; i++) {
                // 先打印一个倒的直角三角形
                for (int j = 3; j >= i; j--) {
                    System.out.print(" ");
                }
                // 打印,左边直角三角形
                for (int k = 1; k <= i ; k++) {
                    System.out.print("*");
                }
                // 打印右边直角三角形
                for (int k = 1; k < i ; k++) {
                    System.out.print("*");
                }
                System.out.println();
    
            }
    
        }
    }
    
    作者:zy7y
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    HTML DOM 12 表格排序
    HTML DOM 10 常用场景
    HTML DOM 10 插入节点
    HTML DOM 09 替换节点
    HTML DOM 08 删除节点
    HTML DOM 07 创建节点
    022 注释
    024 数字类型
    005 基于面向对象设计一个简单的游戏
    021 花式赋值
  • 原文地址:https://www.cnblogs.com/zy7y/p/13503241.html
Copyright © 2011-2022 走看看