• Java 语言基础之语句


    程序的四种流程控制结构:

    1. 顺序结构
    2. 判断结构 : if 语句
    3. 选择结构 : switch 语句
    4. 循环结构 : while 语句, do...while 语句, for 语句

    以下主要分析循环结构:

    • while 格式
    while(条件表达式)
    {
        执行语句;
    }
    
    • do...while 格式
    do
    {
        执行语句;
    }while(条件表达式);
    

    特点: 无论条件是否满足, 循环体至少执行一次.

    • for 格式
    for(初始化表达式; 循环条件表达式; 循环后的操作表达式)
    {
        执行语句;
    }
    

    for 和 while 的区别:

    1. for 和 while 可以互换;
      2, 如果需要通过变量来对循环进行控制, 该变量只作为循环增量存在时, 区别就体现出来了.例如:

    需求: 打印 1 ~ 10 十个数字
    int x = 1;
    while(x < 11)
    {
    System.out.println("x="+x);
    }

    for(int y = 1; y<11; y++)
    {
    System.out.println("y="+y);
    }

    备注:

    • for 循环一结束, y 在内存中就释放了.
    • 局部代码块: 可以决定局部变量的生命周期.

    for 嵌套结构 (大圈套小圈思想)

    嵌套循环, 外循环控制的是行数, 内循环控制的是列数.

    练习一: 打印 5 * 5 雪花图形
    *****
    *****
    *****
    *****
    *****
    
    for(int x=0; x<5; x++)
    {
        // 可以先写内循环,确定一行的输出,
        // 然后在写外循环,确定输出多少行
        for(int y=0; y<5; y++)
        {
            System.out.print("*");
        }
        System.out.println();//打印完一行后,换行
    }
    
    
    练习二: 打印倒三角雪花(尖朝下)
    *****
    ****
    ***
    **
    *
    
    int z = 5;
    for(int x=1; x<=5; x++)
    {
        // 列数随着行数的增加而递减,
        // 递减可以有两种方式解决: 头不变, 尾变: 1-5, 1-4, 1-3...
        // 头变, 尾不变: 1-5, 2-5, 3-5...
        for (int y=1; y<=z; y++)
        {
            System.out.print("*");
        }
        System.out.println();
        z--;
    }
    
    int z = 1;
    for(int x=1; x<=5; x++)
    {
        // 列数随着行数的增加而递减,
        // 头变, 尾不变: 1-5, 2-5, 3-5...
        for (int y=z; y<=5; y++)
        {
            System.out.print("*");
        }
        System.out.println();
        z++;
    }
    
    又发现 z 递增, x 也在递增. 故最终代码:
    for(int x=1; x<=5; x++)
    {
        // 列数随着行数的增加而递减,
        for (int y=x; y<=5; y++)
        {
            System.out.print("*");
        }
        System.out.println();
    }
    
    
    
    练习三: 打印倒三角雪花(尖朝上)
    *
    **
    ***
    ****
    *****
    
    for(int x = 1; x<=5; x++)
    {
        for(int y = 1; y<=x; y++ )
        {
            System.out.print("*");
        }
        System.out.println();
    }
    
    
    
    练习四: 打印九九乘法表
    
    for(int x=1; x<=9; x++)
    {
        for(int y=1; y<=x; y++)
        {
            System.out.print(y+"*"+x+"="+y*x+"	");
            // 	 为制表符,保证格式优良
        }
        System.out.println();
    }
    
    
    
    练习五: 打印特殊三角形
    * * * * *
     * * * *
      * * *
       * *
        *
    
    分析: 该图形由 "*" 和空格组成
    由两个三角形组成: 尖朝上的三角形和尖朝下的星空格
    
    // 一共 5 行
    for(int x=1; x<=5; x++)
    {
        // 打印尖朝上的三角形,第一行不打印
        for(int y=1; y<x; y++)
        {
            System.out.print(" ");
        }
        // 打印尖朝下的星空格
        for(int z=x; z<=5; z++)
        {
            System.out.print("* ");
        }
        System.out.println();
    
    }
    

    其他流程控制语句

    • break 应用范围: 选择结构(switch) 和循环结构
    • continue 应用范围: 循环结构. 代表结束本次循环, 继续下次循环.

    参考资料:
    JavaSE 基础视频(毕向东)

  • 相关阅读:
    Java 将File转换为MultipartFile类型
    JAVA中实现根据文件路径下载文件
    Java中类似单元格之间的计算公式解析,如A1+B3-B4
    Java JPA通过hql语句查询数据
    mysql与oracle 表字段定义比较
    Java时间日期DateUtil
    fetch缓存问题
    Vue中watch的简单应用
    关于跨域和如何解决跨域问题的小结
    Google play 一直等待下载?解决方案如此简单!
  • 原文地址:https://www.cnblogs.com/linkworld/p/7420224.html
Copyright © 2020-2023  润新知