您的位置:首页 > 编程语言 > Java开发

java基础教程:循环结构(10)

2017-06-10 17:36 253 查看
上节课大家学会了如何使用分支结构。但是呢?这还不能满足编程的需要。

试想,如果便利店打广告依靠人力重复叫喊,那半小时就撑不住了。所以,大家就使用录音器,重复播放广告。

编程也是如此。如果重复的代码需要写很多遍,那岂不是很麻烦?

比如说,打印1-100的数字,那么每次都需要让x=x+1;总共需要写100次。

那么,有没有解决方案呢?java当然有。那就是循环结构。

今天的内容是:循环结构

1、while循环结构

2、do while循环结构

3、for循环结构

4、foreach循环结构

第一部分:while循环结构

while循环是java内置的一个循环结构。我们看看它如何定义和使用。

定义:

while(条件){

//代码

}

这个结构的原理是,如果while后的条件成立,那么一直执行循环结构里的代码;除非条件不成立;



示例:打印1-100的数字

int i = 0;
while(i<=100){//如果i<=100,则一直执行循环里的代码
System.out.println(i);
i++; //让i每次加1
}

第二部分:do while循环

do while循环是while循环的一个变种。我们看看如何定义和使用。

定义:

do{

//代码

}while(条件);

do while循环和while的区别是,先执行一遍代码,再执行while循环。注意,只是先执行一遍。



示例:

如果一个数字比10大且比50小,打印这个数字到50的值;否则,打印10-50的值。

那么,就需要先判断这个数组,如果不在范围内,让这个数字变为10.然后打印数字到50的值。

private void printToFifty( int x){
do{
if(x<10 | x>50){
x=10;
}
System.out.println(x);
x++;
}while(x<=50);
}

第三部分:for循环

上面的部分我们学习了while循环,他表示的意思是除非条件不成立。。否则一直执行。循环的次数是不知道的,通过条件来限定。

那么,如果我知道循环的次数,那么有没有其他的方法?

当然有,那就是for循环。

我们来看定义语法:

for(初始化;条件;更新){

//代码

}

初始化是一行为循环做准备的初始化语句,一般为循环因子的初始化。

条件是判断条件成立,则可以一直执行循环

更新呢,则是对循环的状态更新,一般为因子的步长更新。

是不是很迷茫,我们来看代码:输出从1-10的数字

for(int i = 0;i<10;i++){
System.out.println(i);
}

此处呢,初始化语句是int i =0;初始化了一个循环的因子,方便我们通过因子的增减来对循环的控制。

条件语句是i<10,限定了循环可以执行的条件。

更新语句呢是i++;每次执行完之后对因子+1,这样呢,配合条件语句,i最多只能增长10次,否则,就不能继续执行循环语句了。

是不是很棒呢?

我们再给大家介绍下for的具体执行步骤。

步骤1、执行初始化语句。执行步骤2

步骤2、执行条件语句,如果成立,执行循环,步骤3;否则,结束循环。

步骤3、执行代码

步骤4、执行更新语句

步骤5、重新执行步骤2

图例如下:



第四部分:foreach

foreach呢是for的增强版,jdk1.5之后的特性。foreach只是一种理解名称。

主要用在遍历数组和集合,方便我们更快的操作元素。

我们来看定义语法:

for(集合元素类型 遍历时元素的临时变量名称:目标集合){

//代码

}

我们用例子来介绍:

遍历数组  :

int arr[] = {1,2,3};
for(int x: arr){
//代码
}

其中int x 就代表数组当中的每一个元素,他是一个变量。

每一次循环都代表一个遍历的当前元素,从第一个元素到最后一个元素,直到集合被遍历完。

并且呢,一般是从头到尾,所以很方便遍历内容。

最后呢,我们复习一下循环,使用一个容易记住的例子:

while代表你女朋友让你说对不起,除非她说停,否则一直说。

for代表你女朋友让你说100次我爱你,一次不能多,一次不能少。

另外,循环是可以嵌套使用的。我们举个例子:

打印100遍A-Z的字母。那么需要我们循环打印a-z的每一个字母,然后再调用这个循环,打印一百遍。

代码如下:

for(int i=0;i<100;i++){//循环一百次
for(int j = 'A';j<'Z';j++){//循环打印每一个字母
System.out.print((char)j);
}
System.out.print("\n");//换行
}


以上,是我们今天的内容:

while

do while

for

foreach

你记住多少了呢?会使用了吗?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java基础教程