java狂神流程控制:循环结构

Posted on 2022-04-25 19:57  P-oTaTo  阅读(53)  评论(0编辑  收藏  举报

循环结构是一种可以一直保持运行的结构,他不想顺序结构一样只运行一遍就会停止,他会一直不停地运行,直到运行到在代码中加入的停止的代码才会停下来,

一、while结构

这是while基本结构的写法。

下面是注意事项:

1、while的基本写法

在这里我们看到while结构可以使程序不停的循环下去,只有当循环条件不满足的时候才会停下来。

2、依据上一条特性我们可以知道,在程序中我们使用while结构时一定要添加使while停止的条件,不然的话就会让它一直跑下去,占用程序性能。

而某些程序则利用这个特性来设计需求:

如图所示像这样的一直不停的程序就可以用来检查客户端的连接是否掉线等等操作。

 

3、当我们知道了while的用法之后,如何用使用while来解决问题呢?

使用while来解答1+2+3+...+100=?

这样就能解决问题啦!

 

二、dowhile结构

这是dowhile的基本写法。

dowhile结构与while结构最大的区别就是它会先执行一遍代码,再去判断执行的结果是否符合要求。

例子:

在这个例子中我们可以清楚的看出上一个while在判断阶段就已经停止了,所以在分割线上没有输出内容,而dowhile则输出了一个0,才进入判断阶段。

这个例子就可以清晰地看出dowhile是先判断在输出的。

 

三、for循环结构

for循环结构是支持迭代的一种通用结构,且执行次数是在执行前就确定的。语法格式如下:

for循环和while循环的写法有许多不同,

这是while循环的写法

这是for循环的写法

 

另外关于for循环的简易写法也可以看一下:

只要写100.for就可以得到下面的语句。

 

 

下面来通过三道题巩固一下for循环的用法:

第一题:计算0-100的奇数和偶数的和

里面关于计算的语句还是很简单的,但这么久没有接触关于计算的符号还是有些忘了,所以要加强复习啊各位。

 

第二题:用for循环输出1-1000之间能被5整除的数,且每行输出3个。

最后的结果是正常输出的,在里面其实可以看到sout那一句的变化,有一句少了ln,这是因为:

根据本题的要求所以拓展了一点内容。

 

前两题都是比较简单的,第三题会稍微有些难度。

第三题:打印九九乘法表

 

这是我们最重要呈现的效果,下面来看看怎么用代码来实现这个效果。

第一步:

我们先写一个for循环,来编写乘法表的第一列(一一得一,一二得二...)

 

第二步:

我们可以再写一个for循环,把第一步中的for循环嵌套进去,并且定义一个新的变量J,这样就可以得到完整的从1*1=1到9*9=81,具体的过程中还需要改变内层for循环的一些变量,如图:

 

可以看到在第二步就已经初步具备乘法表的雏形了

 

第三步:

去除重复部分

在第二步就能看到乘法口诀表的雏形了,只要内层for循环的条件中改变条件判断就可以做到去除重复部分了

 

第四步:

整理

当我们得到了完整的乘法表之后,剩下的就是排列了

这样我们就得到乘法表了。

 

四、增强for循环

增强for循环现在只是初步了解,以后在学习数组的时候会着重讲解。

先来看看他的语句格式:

 

 

我们在通过代码来了解:

可以看到在上图中首先定义了一个numbers,给他赋值了一组数组:[10,20,30,40,50]  然后在for循环里面把numbers再定义给x,结果中输出一下x,输出结果中就得到了numbers所定义的数组。

 

这个增强for循环我们也可以用一个普通的for循环来代替:

增强for循环其实就是在上面那个for循环的简易版,他们两个的原理是一摸一样的。