------- android培训、java培训、期待与您交流! ----------

循环结构:

代表语句:while ,do while ,for

while语句格式 :

while(条件表达式)

{

执行语句;

}

do while语句格式:

do

{

执行语句;

}

while(条件表达式);

do while特点是条件无论是否满足,循环体至少被执行一次。

for语句格式:

for(初始化表达式;循环条件表达式;循环后的操作表达式)

{

执行语句;

}

   a,for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。

   b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。

   c,最简单无限循环格式:while(true) , for( ; ; ),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。

如何选择用while还是for?              
for和while可以进行互换。但是如果需要定义循环增量。用for更为合适。

什么时候使用循环结构?                
当要对某些语句执行很多次时,就使用循环结构。

程序练习:

/**
 * 需求:用while,do while和for循环算出1+10的结果
 *
 *思路:累加原理
 */
public class WhileDemo
{
	public static void main(String [] args)
	{
		//while example
		int i = 1,sum = 0;
		while(i<=10)
		{
			sum+=i;
			i++;
		}
		System.out.println(sum);

		//do while example
		int sum1 = 0;
		--i;
		do
		{
			sum1+=i;
			i--;
		}
		while(i>=1);
		System.out.println(sum1);

		//for example
		int sum2 = 0;
		for (int x=1;x<=10;x++)
		{
			sum2+=x;
		}
		System.out.println(sum2);
	}
}
/**
 * 需求:打印1~100之间7的倍数的个数
 *
 * 思路:需要用到循环语句,计数器思想
 * 		遍历1~100
 * 		凡是%7为0的就是7的倍数
 *
 */
public class XunHuan1
{
	public static void main(String [] args)
	{
		int count = 0;
		for(int i=1;i<=100;i++)
		{
			if(i%7==0)
				count++;
		}
		System.out.println(count);
	}
}

for语句循环嵌套的练习:发现图形有很多行,每一个行有很多列。要使用嵌套循环

/**
 * 需求:打印图形:
 *
 * ******
 * *****
 * ****
 * ***
 * **
 * *
 * *
 * **
 * ***
 * ****
 * *****
 * ******
 *
 * 思路:符合大圈套小圈的思想,应该使用循环嵌套
 * 		定义横排个数为x,纵排为y,
 * 		发现x从6递减到1再递增到6
 * 		y由x从6到1用了6行
 * 		后半部分是上半部分的翻转
 *
 */
public class XunHuan2
{
	public static void main(String [] args)
	{
		for (int y=0;y<6;y++)
		{
			for (int x=0;x<6-y;x++)
			{
				System.out.print("*");
			}
			System.out.println();
		}

		for (int y=0;y<6;y++)
		{
			for (int x=0;x<y+1;x++)
			{
				System.out.print("*");
			}
			System.out.println();
		}
	}
}
/**
 *
 * 需求:打印下图三角
 *       *
 *      * *
 *     * * *
 *    * * * *
 *   * * * * *
 *
 * 思路:符合大圈套小圈思想,用循环嵌套
 * 		定义横排x,竖排y
 * 		发现个数递增
 *
 * 实际图形
 * -----*
 * ----**
 * ---***
 * --****
 * -*****
 *
 *
 */
public class XunHuan3
{
	public static void main(String [] args)
	{
		for (int y=0;y<5;y++)
		{
			for(int x=0;x<5-y;x++)
			{
				System.out.print(" ");
			}

			for(int z=0;z<y+1;z++)
			{
				System.out.print("* ");
			}
			System.out.println();
		}
	}
}
/**
 *
 *需求:打印一个99乘法表
 *
 *思路:符合大圈套小圈思想,用循环嵌套
 *		定义x为被乘数,y为乘数。
 *
 *
 */
public class XunHuan4
{
	public static void main(String [] args)
	{
		for (int y=1;y<=9;y++)
		{
			for (int x=1;x<=y;x++)
			{
				System.out.print(x+"*"+y+"="+(x*y)+"\t");
			}
			System.out.println();
		}
	}
}

其他流程控制语句:

break( 跳出) ,

continue( 继续)

break语句:应用范围:选择结构和循环结构。

continue语句:应用于循环结构。

注:

a,这两个语句离开应用范围,存在是没有意义的。

b,这个两个语句单独存在下面都不可以有语句,因为执行不到。

c,continue语句是结束本次循环继续下次循环。

d,标号的出现,可以让这两个语句作用于指定的范围。

------- android培训、java培训、期待与您交流! ----------

黑马程序员——JAVA基础之程序控制流结构之循环结构,循环嵌套的更多相关文章

  1. 黑马程序员——JAVA基础之程序控制流结构之判断结构,选择结构

    ------- android培训.java培训.期待与您交流! ---------- 程序控制流结构:顺序结构:判断结构:选择结构:循环结构. 判断结构:条件表达式无论写成什么样子,只看最终的结构是 ...

  2. 黑马程序员——JAVA基础之函数,重载,内存结构

      ------- android培训.java培训.期待与您交流! ---------- 函数: 什么是函数? • 函数就是定义在类中的具有特定功能的一段独立小程序. • 函数也称为方法. 函数的格 ...

  3. 黑马程序员——JAVA基础之JDK1.5新特性高级for循环和可变参数

    ------- android培训.java培训.期待与您交流! ---------- 高级for循环   格式: for(数据类型 变量名 : 被遍历的集合(Collection)或者数组) {   ...

  4. 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)

    正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G  QQ 1481135711 这是我总 ...

  5. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  6. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

  7. 黑马程序员——JAVA基础之泛型和通配符

    ------- android培训.java培训.期待与您交流! ---------- 泛型:            JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...

  8. 黑马程序员——JAVA基础之简述面向对象,类,变量,匿名对象

    ------- android培训.java培训.期待与您交流! ---------- 面向对象: 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将 ...

  9. 黑马程序员——JAVA基础之语法、命名规则

    ------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...

随机推荐

  1. android studio每次启动都要在fetching Android sdk compoment information停好久的解决方案

    1)进入刚安装的Android Studio目录下的bin目录.找到idea.properties文件,用文本编辑器打开.2)在idea.properties文件末尾添加一行: disable.and ...

  2. Cach&#233;数据库学习笔记(2)

    目录: 创建新类(表)(class文件)与创建routine(.mac  .inc) 在类里面添加函数(classmethod) Terminal的使用 ======================= ...

  3. TC HTB r2q

    HTB: quantum of class 10001 is big. Consider r2q change. 根据HTB的官方文档显示,quantum是在可以“借”的情况下,一次可以“借”多少,并 ...

  4. BZOJ 3675: [Apio2014]序列分割( dp + 斜率优化 )

    WA了一版... 切点确定的话, 顺序是不会影响结果的..所以可以dp dp(i, k) = max(dp(j, k-1) + (sumn - sumi) * (sumi - sumj)) 然后斜率优 ...

  5. 使用python操作RabbitMQ,Redis,Memcache,SQLAlchemy 其二

    一.概念 1.Memcached     Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态 ...

  6. js生成随机数

    //生成n以内的随机数 function getRandom(n){ return Math.floor(Math.random()*n+1) } //生成1000以内的随机数 alert(getRa ...

  7. xamarin android 在代码中如何设置文本颜色

    xamarin android 在代码中如何设置文本颜色 TextView v = FindViewById<TextView>(Android.Resource.Id.Message); ...

  8. RocketMQ源码 — 十一、 RocketMQ事务消息

    分布式事务是一个复杂的问题,rmq实现了事务的最终一致性,rmq保证本地事务成功消息一定会发送成功并被成功消费,如果本地事务失败了,消息不会被发送. rmq事务消息的实现过程为: producer发送 ...

  9. 4.2WebHost配置「深入浅出ASP.NET Core系列」

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. WebHost配置 覆盖配置文件和修改启动URL 覆盖配置文件和修改启动URL是经常使用的地方,覆盖配置文件可以自 ...

  10. WEB学习笔记7-样式与结构分离

    CSS样式应用于HTML总共4种样式: (1)在HTML页面中链接一个CSS文件 文件以link形式添加到<head>部分,在link中可以设置media属性来表明样式使用的场景.例如,m ...