Java循环语法介绍

如果要求打印100句”Java语言”,你会怎么做?

复制粘贴100句”System.out.prinltn(“Java语言”)”???

在这里就需要用到for循环了

for循环语法:

for(初始值;boolean类型的运算式;重复式)

{

描述句;

}

 

看语法的话有点懵逼,我们直接通过代码直观的展示:

public class Test {
	public static void main(String[] args) {
		// 要求打印5句"关注微信公众号——夜猫笔记"
		for(int i =0 ; i<5 ; i++){
			System.out.println("关注微信公众号——夜猫笔记");
		}
	}
}

 

从结果中可以看出完整的打印了5句话。当你把这段代码编译的时候,计算机就会识别出要做出循环操作,从哪里开始循环呢?从i=0作为起点,终点呢?i<5,过程就是i++。

逻辑:

i=0;i<5;i++ 打印:”关注微信公众号——夜猫笔记”

i=1;i<5;i++ 打印:”关注微信公众号——夜猫笔记”

i=2;i<5;i++ 打印:”关注微信公众号——夜猫笔记”

i=3;i<5;i++ 打印:”关注微信公众号——夜猫笔记”

i=4;i<5;i++ 打印:”关注微信公众号——夜猫笔记”

此时我们已经输出了5条语句了,i不能再等于5了,所以此时for循环结束

上面讲述的是单循环,我们还可以写双循环

双循环语法:

for(初始值;boolean类型的运算式;重复式){

for(初始值;boolean类型的运算式;重复式){

描述句;

}

}

 

还是通过代码来直观的展示吧…

用双循环打印99乘法表,代码展示:

public class Test {
	public static void main(String[] args) {
		// 要求打印99乘法表
		for(int i=1;i<=9;i++){
			for(int j=1;j<=i;j++){
				System.out.printf("%d * %d =%dt",j,i,i*j);
			}
			System.out.println();
		}
	}
}

 

双循环的执行顺序可以这样理解,就像这个数学式子[(6+6)*3],根据运算法则我们必须先算小括号里面,再计算中括号里面的。

双循环也是一样的道理,我们先执行foi(int j=1 ;j<=i;j++)这个循环,当这个循环结束后,再执行外面的大循环for(int i=1;i<=9;i++),一直循环到大循环结束为止。

换个说法就是小循环打印每行该有的东西,大循环打印的就是行数。

我们通过打印一个正方形来更直观的展示:

public class Test {
	public static void main(String[] args) {
		/**
		 *  要求打印一个5*9的长方形
		 *  5代表一行需要5个*
		 *  9代表一共有9行
		 */
		for(int i=0;i<9;i++){
			for(int j=0;j<5;j++){
				System.out.printf("* ");
			}
			System.out.println();
		}
	}
}

while循环

语法:

while(条件式){
   描述句;
}

 

只要条件式结果为true,就会一直执行此循环。

public class Test {
	public static void main(String[] args) {
		/**
		 * 随机生成0~9的数字,只要是生成5就会跳出循环,不是5就一直循环
		 */
		while(true){
			int a = (int)(Math.random()*10);//随机生成0~9的数字
			System.out.println(a);
			if(a==5){
				System.out.println(a);
				break;//跳出循环结构
			}
		}
	}
}

除了单纯的while()循环,还有do…while()循环

语法:

do{

描述句

}while(条件式);//注意:这里是有";",不能省略

 

do…while循环的逻辑是:先做,然后再判断是否循环。还是通过代码的方式来展示它和while直接的差别

public class Test {
	public static void main(String[] args) {
		int a;
		/**
		 * 随机生成0~9的数字,只要是生成5就会跳出循环,不是5就一直循环
		 */
		do{
			 a = (int)(Math.random()*10);
			 System.out.println(a);
		}while(a != 5);
		System.out.println(a);
	}
}

 

程序的逻辑是:先随机生成0~9的数字赋值给a,并且输出a,然后再判断a是否等于5,如果不等于5就执行while循环,如果等于5就不执行while循环。

物联沃分享整理
物联沃-IOTWORD物联网 » Java循环语法介绍

发表评论