Day21-Java的程序控制语句

版权声明:啥是版权,感觉都是侵权必究。我也会究的。 https://blog.csdn.net/Scan_13286/article/details/84593704

Day21-Java的程序控制语句


程序控制包括:顺序控制,条件控制,循环控制。


1.顺序控制

顺序控制就是从上至下运行。

public class Blog {
	public static void main(String[] args) {
		int a = 1;
		int b = 2;
		int c = a + b;
		System.out.println(c);
	}
}

如果在int a = 1;int b = 2的中间写:int d = a+b;
即:int a = 1;
       int d = a+b;
       int b = 2;
则会报错,因为程序是从上至下运行,故如果变量b在变量d之下,则不会被程序优先加载到。


2.条件语句

条件语句分为if语句和switch语句。即给定一个条件,当符合条件则执行,不符合条件不执行。
格式:if(条件){条件成立执行部分}else{条件不成立执行部分}

public class Blog {
	public static void main(String[] args) {
		int a = 1;
		int b = 2;
		int c = a + b;
		if(a>b){
			System.out.println(a);
		}else{
			System.out.println(b);
		}
		System.out.println(c);
	}
}

如果a>b,则输入a,否则输出b。


2.1多分支条件语句

public class Blog {
	public static void main(String[] args) {
		int a = 5;
		int b = 7;
		int c = 9;
		if(a>b){
			System.out.println(a);
		}else if(a>c){
			System.out.println(a);
		}else if(c>b){
			System.out.println(c);
		}else{
			System.out.println(b);
		}
	}
}

判断a是否大于b,成立则输出a,不成立继续判断a是否大于c,成立输出a,不成立继续判断c是否大于b,成立输出c,不成立输出b。


2.2 嵌套条件语句

public class Blog {
	public static void main(String[] args) {
		int a = 5;
		int b = 7;
		int c = 9;
		if(a>b){
			if(a>c){
				System.out.println(a);
			}else{
				System.out.println(c);
			}
		}else if(b>c){
			System.out.println(b);
		}else{
			System.out.println(c);
		}
	}
}

经典案例之一:比较三个数的大小,输出最大的数。
先判断a是否大于b,【成立判断a是否大于c,成立输出a,不成立输出c】,【不成立判断b是否大于c,成立输出b,不成立输出c】


2.3 条件语句的简写

格式:【条件】?【条件成立执行部分】:【条件不成立执行部分】(注:中括号是为了区分开,实际不用中括号)

public class Blog {
	public static void main(String[] args) {
		int a = 5;
		int b = 7;
		int c = 9;
		System.out.println(a>b?a>c?a:c:b>c?b:c);
	}
}

这个和上面的判断三个数中最大的数是一样的。只是形式不同。
a>b?a>c?a:c:b>c?b:c 用括号区分一下        ----> (a>b)?[(a>c)?[a:c]]:[(b>c)?[b:c]]
大概就是这个样子。


3.循环语句

循环语句分为 while循环语句,do-while循环语句,for循环语句。即给定一个条件,在满足条件时,重复执行代码块。


3.1 while循环语句

格式:while(条件){重复执行代码块}

public class Blog {
	public static void main(String[] args) {
		int i = 0;
		while(i<10){
			System.out.print(i);
			i++;
		}
	}
}

当i<10时,执行System.out.print(i);i++,当i>=10时,就结束循环。
输出:在这里插入图片描述如图所示重复执行了10次。


3.2 do-while循环语句

格式:do{重复执行代码块}while(条件);【注:末尾的分号千万不要忘记了】

public class Blog {
	public static void main(String[] args) {
		int i = 0;
		do{
			System.out.print(i);
			i++;
		}while(i<10);
	}
}

看上去和while循环语句每什么区别,输出的内容也一样。
但是do-while循环语句,是先执行一次,再判断。所以至少会输出一次。
即使把循环条件改为i<0,do-while语句还是会执行一次,而while就不会执行了。


for循环语句

格式:for(初始化变量;条件;迭代部分){重复执行代码块}

public class Blog {
	public static void main(String[] args) {
		for(int i = 0;i<10;i++){
			System.out.print(i);
		}
	}
}

和之前的while循环一样,输出的内容也一样,只是形式不同。
for循环条件语句,可以清楚的知道循环的次数,也就是必须要定义循环的次数,即中间的int i = 0;i<10;i++
而while循环不用明确定义循环的次数。即使while(true){循环执行代码块}也行,只要条件为true就行,不过很容易死循环。

当然。for循环语句也可以这样写:int i = 0; for(;i < 10);i++{重复执行代码块},变量i在外部声明。
或者。for循环语句也可以这样写:for(int i = 0;;i++){重复执行代码块},没有循环条件,死循环,不会报错。
或者。for循环语句也可以这样写:for(int i = 0;i < 10;){重复执行代码块},没有迭代部分,死循环,重复执行,不会报错。


  • 更完~~~

猜你喜欢

转载自blog.csdn.net/Scan_13286/article/details/84593704