嵌套for循环的基础直角三角形——四个方向打印

嵌套循环是一个很重要的循环格式。特别是对于后期的数组,排序,链表等等内容都有着直接的关系,所以这里必须要学明白,我们使用打印型号的方式来练习它。一定要熟练掌握。

目录

外层i与内容j控制的轴向

1、打印5x5星号矩阵

2、打印左下角直角三角形

3、打印左上角直角三角形

4、打印右上角直角三角形

5、打印右下角的三角形

6、菱形打印

总结


外层i与内容j控制的轴向

 public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            // 内层循环控制列
            for (int j = 0; j < size; j++) {
                System.out.print("y轴* "+j);
            }
            System.out.println("x轴"+i); // 换行
        }
    }

效果: 

可以看到X轴控制的是行数,Y轴控制的是列数。

这里可以理解成一个二维矩阵,矩阵就是:

在数学中,矩阵是一个按照长方阵列排列的复数或实数集合,其最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。矩阵是高等代数学中的常见工具,也常见于统计分析等应用数学学科中。在物理学中,矩阵于电路学、力学、光学和量子物理中都有应用;计算机科学中,三维动画制作也需要用到矩阵。 矩阵的运算是数值分析领域的重要问题。将矩阵分解为简单矩阵的组合可以在理论和实际应用上简化矩阵的运算。对一些应用广泛而形式特殊的矩阵,例如稀疏矩阵和准对角矩阵,有特定的快速运算算法。

1、打印5x5星号矩阵

 public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            // 内层循环控制列
            for (int j = 0; j < size; j++) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
    }

二维矩阵的星号效果: 

2、打印左下角直角三角形

这里需要控制内容的【j】来处理列的输出个数。

 public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            // 内层循环控制列
            for (int j = 0; j <= i; j++) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
    }

 

3、打印左上角直角三角形

public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            // 内层循环控制列
            for (int j = size; j > i; j--) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
}

4、打印右上角直角三角形

右上角的直角三角形需要单独的使用一个内循环用来打补丁,我们可以看到右上角打印的话每一行需要递增一个,也就是正序,直接添加一个正序输出的空格即可。

    public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            for(int j = 0; j<i; j++){
                System.out.print("  ");
            }
            // 内层循环控制列
            for (int j = size; j > i; j--) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
    }

5、打印右下角的三角形

打印右下角的三角形需要再最初的时候就要打印空格来占位,占位的顺序是4/3/2/1,所以肯定是倒序输出。

    public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            for(int j = size-1; j > i; j--){
                System.out.print("  ");
            }
            // 内层循环控制列
            for (int j = 0; j <= i; j++) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
    }

最后我们可以看到右下角直角。

6、菱形打印

在右上角和右下角的代码补丁中将2个空格替换成一个空格即可。

    public static void main(String[] args) {
        int size = 5;

        // 外层循环控制行
        for (int i = 0; i < size; i++) {
            for(int j = size-1; j > i; j--){
                System.out.print(" ");
            }
            // 内层循环控制列
            for (int j = 0; j <= i; j++) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
                // 外层循环控制行
        for (int i = 0; i < size; i++) {
            for(int j = 0; j<i; j++){
                System.out.print(" ");
            }
            // 内层循环控制列
            for (int j = size; j > i; j--) {
                System.out.print("* ");
            }
            System.out.println(); // 换行
        }
    }

效果:

大型菱形15x15

总结

学习Java的for循环嵌套是非常必要的,因为它可以帮助我们更有效地处理多维数据结构,比如二维数组、三维数组等。这种嵌套循环结构允许我们在每个维度上遍历数据元素,并对每个元素执行特定的操作。下面列举一些for循环嵌套学习的必要性:

  1. 提高编程技能:掌握for循环嵌套可以让我们编写出更复杂的程序,实现更高级的功能。这是提高编程技能的一个重要步骤。
  2. 处理多维数据结构:在实际编程中,我们经常需要处理多维数据结构,比如图像处理中的像素矩阵、游戏中的二维地图等。通过for循环嵌套,我们可以方便地遍历这些数据结构中的每个元素,进行各种操作。
  3. 优化算法性能:通过合理使用for循环嵌套,我们可以优化算法的性能。例如,在排序、搜索等算法中,使用嵌套循环可以降低时间复杂度,提高程序的执行效率。
  4. 解决实际问题:许多实际问题需要用到for循环嵌套来解决,比如打印乘法口诀表、生成杨辉三角等。掌握for循环嵌套可以帮助我们更好地解决这类问题。
  5. 增强逻辑思维能力:学习for循环嵌套需要理解循环的嵌套关系和执行顺序,这有助于增强我们的逻辑思维能力和空间想象力。

总之,学习Java的for循环嵌套是非常有必要的,它可以帮助我们提高编程技能、处理多维数据结构、优化算法性能、解决实际问题以及增强逻辑思维能力。

  • 20
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红目香薰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值