Java(十二)循环

简介: Java(十二)循环

循环  又是一个老生常谈的问题。Java中的循环大概有:while、do……while、for等。


我们先从头来看:


一:while循环


语法结构:

while( 布尔表达式 ) { //循环内容 }


我们来测试一下:


public class one {
    /**
     * main函数
     * @param args
     */
    public static void main(String[] args)
    {
        // 调用测试while循环函数
        (new one()).whileS();
    }
    /**
     * while 循环
     */
    public void whileS()
    {
        // ==================================================
        // 语言多重多样,while循环万变不离其宗。先判断,后执行。
        int x = 10;
        while(x > 0)
        {
            System.out.print("value of x : " + x );
            System.out.print("\n");
            x--;
        }
    }
}


输出:


value of x : 10
value of x : 9
value of x : 8
value of x : 7
value of x : 6
value of x : 5
value of x : 4
value of x : 3
value of x : 2
value of x : 1

 

二:do-while循环


语法结构:

do {
       //代码语句
}while(布尔表达式);

 

我们来测试一下:

public class one {
    /**
     * main函数
     * @param args
     */
    public static void main(String[] args)
    {
        // 调用测试do-while循环函数
        (new one()).doWhileS();
    }
    /**
     * do-while循环
     */
    public void doWhileS()
    {
        // =============================================
        // 语言多重多样,do-while循环万变不离其宗。先执行,后判断。
        int x = 10;
        do{
            System.out.print("value of x : " + x );
            System.out.print("\n");
            x--;
        }while(x > 0);
    }
}


输出:

value of x : 10
value of x : 9
value of x : 8
value of x : 7
value of x : 6
value of x : 5
value of x : 4
value of x : 3
value of x : 2
value of x : 1

 

看到这里,我发现了一个小问题,那就是,while和do-while的区别是什么呢?简单讲:while是先判断,满足条件后在进入循环。不满足条件则不会进入。


Do-while是先执行,在判断,也就是说,无论判断条件是否满足条件,都会进入一次循环体。


这个一定要搞清楚,do-while在某些场景下有大用处。

 

三:for循环


虽然所有的循环都可以使用while、do-while来实现,但是,我一般不咋用,我用的比较多的是for循环。


Java同样为我们提供了 for循环。


语法结构:

for(初始化; 布尔表达式; 更新) { //代码语句 }


我们来测试一下:

public class one {
    /**
     * main函数
     * @param args
     */
    public static void main(String[] args)
    {
        // 调用测试for循环函数
        (new one()).forS();
    }
    /**
     * 测试for循环
     */
    public void forS()
    {
        // ===============================================================
        // 语言多重多样,普通的for循环万变不离其宗。
        for(int x = 10; x < 20; x++)
        {
            System.out.print("value of x : " + x );
            System.out.print("\n");
        }
    }
}


输出:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

 

四:增强版for循环


For循环相对来说还是比较麻烦,java为我们提供了另一种增强版的for循环。


语法结构:

for(声明语句 : 表达式) { //代码句子 }


声明语句: 声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。


表达式: 表达式是要访问的数组名,或者是返回值为数组的方法。


我们来测试一下:

public class one {
    /**
     * main函数
     * @param args
     */
    public static void main(String[] args)
    {
        // 调用测试for循环函数
        (new one()).forS();
    }
    /**
     * 测试for循环
     */
    public void forS()
    {
        // ======================================
        // 语言多种多样,java的for循环是有增强版的~
        // 测试增强版的for循环需要用到数组……嗯,好像是又超纲了,就当曾经认识过她,循环完事才是数组……
        int [] array = {1,2,3,4,5,6,7,8,9};
        for(int x:array)
        {
            System.out.print("value of x : " + x );
            System.out.print("\n");
        }
    }
}


输出:

value of x : 1
value of x : 2
value of x : 3
value of x : 4
value of x : 5
value of x : 6
value of x : 7
value of x : 8
value of x : 9

 

增强版的for循环,相对于for循环,语法相对简单了一些。嗯,大概是这个样子。

 

五:嵌套循环


循环是可以嵌套循环的,我觉得我好想再说废话,测试这个得想个好玩的东西,使用for循环嵌套输出个九九乘法表吧。


public class one {
    /**
     * main函数
     * @param args
     */
    public static void main(String[] args)
    {       
        // 调用测试99乘法表
        (new one()).nine();
    }
    /**
     * 99乘法表
     */
    public void nine()
    {
        for (int i = 1;i <= 9;i++)
        {
            System.out.print("\n");
            for (int k = 1;k <= i;k++)
            {
                int res = k * i;
                System.out.print( k + " * " + i + " = "+res+" | " );
            }
            System.out.print("\n");
        }
    }
}

输出:

image.png

 

六:跳出循环


跳出循环这里有两个关键字:break、continue。


我这里仍然使用for循环来进行测试。


1:break


break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。


break 跳出最里层的循环,并且继续执行该循环下面的语句。


我们来测试一下:

/**
     * break跳出循环
     */
    public void keyBreak()
    {
        // ================================================
        // 语言多重多样,普通的for循环万变不离其宗。
        for(int x = 10; x < 20; x++)
        {
            if(x == 15)
            {
                break;
            }
            System.out.print("value of x : " + x );
            System.out.print("\n");
        }
    }


输出:


value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14

 

通过输出的结果,我们可以看到,当循环到15的时候直接跳出了循环

 

2:continue


continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。


在 for 循环中,continue 语句使程序立即跳转到更新语句。


在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。


我们来测试一下:

/**
     * break跳出循环
     */
    public void keyContinue()
    {
        // ===============================================================
        // 语言多重多样,普通的for循环万变不离其宗。
        for(int x = 10; x < 20; x++)
        {
            if(x == 15)
            {
                continue;
            }
            System.out.print("value of x : " + x );
            System.out.print("\n");
        }
    }


输出:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 16
value of x : 17
value of x : 18
value of x : 19

 

通过输出的结果,我们可以看到,当循环到15的时候直接跳出了本次循环,继续进行下一次循环。

 


以上大概就是java循环的基本知识,有好的建议,请在下方输入你的评论。


目录
相关文章
|
29天前
|
Java 程序员 API
Java循环操作哪个快?
本文探讨了Java中stream API与传统for循环在性能上的对比,通过多个示例分析了不同场景下两者的优劣。作者指出,尽管stream API使代码更简洁,但不当使用会降低可读性和性能,特别是在处理大数据量时。实验结果显示,在多数情况下,普通for循环的性能优于stream API,尤其是在单次操作耗时较短但需多次执行的场景中。文章建议开发者在设计初期就考虑全局流程,避免重复使用stream流,以提升代码质量和性能。
Java循环操作哪个快?
|
1月前
|
Java 程序员 API
Java循环操作哪个快?
本文探讨了Java中Stream API与传统for循环的性能对比及适用场景。作者通过实际案例分析,指出在某些情况下,过度使用Stream API会导致代码可读性和维护性下降。测试结果显示,在数据量较小的情况下,普通for循环的性能优于Stream API,尤其是在涉及多次类似操作时。因此,建议在开发中根据具体需求选择合适的遍历方式,以提高代码的可读性和性能。
Java循环操作哪个快?
|
4月前
|
存储 Java
|
2月前
|
算法 Java 测试技术
🧑‍💻Java零基础:Java 的循环退出语句 break
【10月更文挑战第16天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
57 6
|
2月前
|
Java 测试技术 数据安全/隐私保护
📖Java零基础-while循环语句的深度解析
【10月更文挑战第6天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
38 1
|
3月前
|
Java
java基础(2)循环语句for、while、do...while
本文介绍了Java中的基础循环语句,包括for循环、while循环和do...while循环。文章通过示例代码展示了for循环的基本结构和用法,while循环的先判断后执行逻辑,以及do...while循环的先执行后判断逻辑。这些循环语句在Java编程中非常常用,用于执行重复的任务。
58 4
java基础(2)循环语句for、while、do...while
|
7月前
|
Java
Java的控制流程语句:深入理解条件语句、循环语句与跳转语句
Java的控制流程语句:深入理解条件语句、循环语句与跳转语句
75 1
|
2月前
|
传感器 Java 测试技术
📖Java零基础-do-while循环语句的深入剖析
【10月更文挑战第5天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
32 1
|
3月前
|
Java
Java循环
Java循环
45 6
|
3月前
|
编译器
Java--for循环语句
Java--for循环语句