龙空技术网

Java入门!认识更加简洁的循环,for 循环语句「第11集」

云端源想IT培训 121

前言:

目前同学们对“javafor最后一个”可能比较看重,我们都想要剖析一些“javafor最后一个”的相关知识。那么小编也在网上网罗了一些关于“javafor最后一个””的相关内容,希望小伙伴们能喜欢,姐妹们快快来学习一下吧!

在上一小节中,我们学习了while方式的循环,也了解了循环的概念,这小节我们来学习一种特殊的while循环,也是被使用最广泛的循环-for循环

for 循环语法

for (变量声明; 条件; 迭代语句) {    //循环体}

在关键字 for后面的括号中,会有三个语句

1. 第一个语句是变量声明语句,允许声明一个或多个整型变量

2. 第二个语句是条件,条件的检测方式与while循环相同(每次循环开始前判断条件成立与否)。如果条件是true,则将执行循环体内的代码;然后执行迭代语句,再次请求条件,依次循环,直到条件false为止

3. 第三个语句是迭代语句,虽然可以是任何语句,但该语句通常用于递增或递减变量。

for 循环流程图

示例1

public class ForLoop1 {    public static void main(String[] args) {        for (int i = 1; i <= 5; i ++) {            System.out.println("今天天气不错");        }    }}

解析:

在上面的示例中,我们有

初始化表达式:int i = 1测试表达式:i < = 5更新表达式:i++

在此,最初i的值为 1。因此,测试表达式首次求值为true。 因此,将执行打印语句。 现在,将求值更新表达式。

每次求值更新表达式时,i的值增加 1。再次,求值测试表达式。 并且,重复相同的过程。

该过程一直进行到i为 11 时。当i为 11 时,测试表达式(i <= 10)为false,并且for循环终止。

有关的表达式及求值方式,在我们之前的文章中已经学过,不够熟悉再看一下之前的文章。

示例2

public class ForLoop2 {    public static void main(String[] args) {        int sum = 0; // 累加和        for (int i = 1; i <= 100; i ++) {            sum += i; // 加和赋值运算        }        System.out.println("1到100的累加和为:" + sum);    }}

解析:

1. 在执行循环体前,会先执行括号中的变量声明语句int i = 1,它定义了一个计数器变量i并且赋值为1(注意这个语句只执行一次)。

2. 然后会执行条件判断语句i <= 100,显然条件成立,执行循环体,循环体执行完成后会才会执行括号中的第三个语句i ++,再次判断条件是否成立,直到当i的值为100时,

3. 最后一次执行循环体,这个时候i再次自增1为101,条件不成立,结束循环。

1st 变量: i = 1 and sum = 0+1 = 12nd 变量: i = 2 and sum = 1+2 = 33rd 变量: i = 3 and sum = 3+3 = 64th 变量: i = 4 and sum = 6+4 = 10... .. ...100th 变量: i = 100 and sum = 4950 + 100 = 5050

实际使用中,通常使用for循环来遍历一个数组,我们将在 Java 数组小节举例介绍。

怪异使用

for循环还可以缺省变量声明语句、循环条件和迭代语句,如以下代码:

// 缺省变量声明语句for (int i = 0; ; i ++) {    // 语句}// 缺省循环条件语句和迭代语句for (int i = 0; ; ) {    // 语句}// 缺省所有语句 - 无限循环for (;;) {    // 语句}

但请注意,通常情况下不建议这样写。我们在这里提一下,只是希望大家看到类似的用法,不要认为是错的。

for each 循环

由于学习 for each 循环需要一些数组和集合的前置知识,我们将会在 Java 数组小节举例讲解。

break 和 continue 关键字

我们可以在循环体中使用这两个关键字来重定向程序执行流。通过以下例子我们体会一下。

break

代码:

public class BreakKeywords1 {    public static void main(String[] args) {        for (int i = 1; i <= 10; i ++) {            if(i == 3) { // 条件语句                System.out.println("当i等于3时,终止循环!");                break;            }                        System.out.println("第"+i+"次循环");        }        System.out.println("没有循环啦");    }}

解析:

循环打印数字的代码,当循环到达第3次迭代时,执行条件分支中的语句,将终止循环

注意:break语句通常配合if语句使用。

continue

代码:

public class BreakKeywords1 {    public static void main(String[] args) {        for (int i = 1; i <= 10; i ++) {            if(i == 3) { // 条件语句                System.out.println("当i等于3时,不要执行本次循环!");                break;            }            System.out.println("第"+i+"次循环");        }        System.out.println("没有循环啦");    }}

解析:

只是跳过当次循环,继续执行下一次循环。continue语句只能跳过它自己所在位置的循环。

小结

本节我们依次介绍了Java中的特殊循环结构:for循环以及for each循环。并且介绍了break和continue关键字在循环中的使用。

在使用循环结构编写业务代码时,为了避免死循环,一定要确保循环条件能够被影响。

标签: #javafor最后一个