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
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    洗牌算法
    Kindeditor JS 富文本编辑器图片上传指定路径
    【锋利的Jquery】读书笔记十一
    论JSON的重要性☞异步上传过程中data取多组值的方法
    【锋利的Jquery】读书笔记七
    【锋利的Jquery】读书笔记六
    关于jquery 1.9以上多次点击checkbox无法选择的
    【锋利的Jquery】读书笔记五
    【锋利的Jquery】读书笔记四
    一、SQL Server常用系统表
  • 原文地址:https://www.cnblogs.com/zy7y/p/13503241.html
Copyright © 2011-2022 走看看