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


上节课大家学会了如何使用分支结构。但是呢?这还不能满足编程的需要。

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

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

比如说,打印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


你记住多少了呢?会使用了吗?

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值