01Java入门之流程控制语句

流程控制语句

1、注释

2、方法

3、流程结构

4、分支结构的语句-if

5、分支结构的语句-switch

6、循环结构的语句-for

7、循环结构的语句-while

8、循环结构的语句-do while

9、流程跳转语句-break和continue

10、双重循环

课程

1、注释

(1)对代码解释说明的文字,程序执行时注释不执行
(2)Java注释分为三类
单行注释 //注释信息
多行注释 /* 注释信息 /
文档注释 /
* 注释信息 */
(3)使用说明
方法体内使用单行或多行注释
方法体外使用文档注释

2、方法

(1)语句组(语句块)
多条语句使用大括号括起来,我们成为语句组(语句块)。
语句组之间可以相互嵌套。

(2)方法
它其实就是一个有名字的语句组(语句块)。
定义位置:类中。

简单定义:
public static void 方法名(){
//方法体:语句组
}
案例:
public class Lx1 {
public static void lx1() {
int a = 1, b = 2;

// a=b; //a=2
// b=a; //b=2

	// 1

// int c=a; //c=1
// a=b; //a=2
// b=c; //b=1

	// 2
	a = a + b; // a=3 b=2
	b = a - b; // a=3 b=1
	a = a - b; // a=2 b=1

	System.out.println(a);
	System.out.println(b);
}

public static void main(String[] args) {
	System.out.println(1);
	lx1();
	System.out.println(2);
}

}

(3)主方法
主方法是我们程序执行的入口!!
我们要执行的代码必须放入主方法中。

(4)方法的调用
调用语句:方法名();

调用的效果:调用一个方法,其实就是执行这个它的方法体中的代码。
方法体中的代码执行完毕,调用语句执行才结束。
(5)使用方法封装代码的好处
提高代码的重用性。
定义一次,多处调用。

3、流程结构

(1)顺序结构
我们的程序默认是按照顺序结构执行:从上往下从左往右,一条一条语句执行的。
(2)选择结构(分支结构)
If语句
Switch语句
(3)循环结构(迭代结构)
For语句
While语句
Do while语句

4、分支结构的语句-if

(1)使用场景
如果一件事情有多种情况,但是每次只能发生一种情况。
到底发生哪一种情况呢,根据条件来选择。
简单说,n选1。
(2)单分支
语法:
if(布尔条件){
//条件为true要执行的代码(语句组)
}
执行流程:

案例:
public class if01 {
public static void main(String[] args) {
System.out.println("—begin----");
int week=3;

	if(week>5) {
		System.out.println("我去打球");
	}
	System.out.println("---end----");
}

}

(3)双分支
语法:
if(布尔条件){
//条件为true要执行的代码(语句组)
}else{
//条件为false要执行的代码(语句组)
}
执行流程:

案例:
public class if02 {
public static void main(String[] args) {

	System.out.println("---begin----");
	int  week=3;
	
	if(week>5) {
		System.out.println("我去打球");
	}else {
		System.out.println("我要上班或者学习");
	}
	System.out.println("---end----");
}

}
public class if0201 {
public static void main(String[] args) {

	int a=1,b=3;
	if(a>b) {
		System.out.println(a);
	}else {
		System.out.println(b);
	}
	
}

}

(4)多分支
语法:
if(布尔条件1){
//条件1为true要执行的代码(语句组)
}else if(布尔条件2){
//条件2为true要执行的代码(语句组)
}else if(布尔条件3){
//条件3为true要执行的代码(语句组)
}

else if(布尔条件n-1){
//条件n-1为true要执行的代码(语句组)
}else {
//以上条件都不成立,要执行的代码(语句组)
}

执行流程:

案例:
public class if03 {
public static void main(String[] args) {

	int  a=1,b=2,c=3;
	
	if(a>=b&&a>=c) {
		System.out.println(a);
	}else  if(b>=a&&b>=c) {
		System.out.println(b);
	}else {
		System.out.println(c);
	}
	
}

}
public class if0301 {
public static void main(String[] args) {

	int  score=99;
	//优  [90-100]
	//良  [80-90)
	//中  [60-80)
	//差  [0-60)
	
	if(score>=90) {
		System.out.println("优");
	}else  if(score>=80) {
		System.out.println("良");
	}else  if(score>=60) {
		System.out.println("中");
	}else {
		System.out.println("差");
	}
	
	//单分支
	if(score>=90) {
		System.out.println("优");
	}
	if(score>=80&&score<90) {
		System.out.println("良");
	}
	if(score>=60&&score<80) {
		System.out.println("中");
	}
	if(score<60){
		System.out.println("差");
	}
	
	//双分支
	if(score>=90) {
		System.out.println("优");
	}else {
		if(score>=80) {
			System.out.println("良");
		}else { 
			if(score>=60) {
				System.out.println("中");
			}else {
				System.out.println("差");
			}
		}
	}  
	
}

}

5、分支结构的语句-switch

(1)语法:
switch(表达式){
case 常量值1:语句组1;[break;]
case 常量值2:语句组2;[break;]
case 常量值3:语句组3;[break;]

case 常量值n-1:语句组n-1;[break;]
default: 语句组n;
}
注意:表达式的结果只能是byte、short、int、char、String(jdk1.7)
(2)执行流程:

(3)案例:
public class switch01 {
public static void main(String[] args) {

	int  week=3;
	
	switch(week) {
		case 1:
			System.out.println("星期一");
			break;
		case 2:
			System.out.println("星期二");
			break;
		case 3:
			System.out.println("星期三");
			//break;
		case 4:
			System.out.println("星期四");
			//break;
		case 5:
			System.out.println("星期五");
			//break;
		case 6:
			System.out.println("星期六");
			//break;
		case 7:
			System.out.println("星期天");
			//break;
		default:
			System.out.println("你输入的信息错误");
	}
	
}

}
(4)break语句作用
结束switch语句。

如果没有break:从匹配的case语句组开始,一直向下执行到break或者下面的所有语句组结束为止。Switch才执行结束。

巧妙利用没有break的特点,合并重复的语句组:
public class Switch03 {
public static void main(String[] args) {

	int  y=2014,m=2;
	
	switch(m) {
		case  1:
		case  3:
		case  5:
		case  7:
		case  8:
		case  10:
		case  12:
			System.out.println(31);
			break;
		case 4:
		case 6:
		case 9:
		case 11:
			System.out.println(30);
			break;
		case 2:
			if((y%4==0&&y%100!=0)||(y%400==0)) {
				System.out.println(29);
			}else {
				System.out.println(28);
			}
	}				
}

}
(5)多分支if和switch对比
If适用于所有多分支的场景
Switch只适用于可以枚举的场景

6、循环结构的语句-for

(1)使用场景
我们重复进行某项工作
(2)语法
for([初始化语句];[布尔条件];[迭代语句]){
//循环体:用来定义重复的操作
}
(3)执行流程

(4)使用案例
public class for01 {
public static void main(String[] args) {
for(int i=1;i<=5;i++) {
System.out.println(“这是一份资料”);
}
}
}
public class for02 {
public static void main(String[] args) {

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

}
public class for03 {
public static void main(String[] args) {

	int  ji=1;
	
	for(int  i=5;i>0;i--) {
		ji=ji*i;
	}
	System.out.println(ji);
}

}
public class for04 {
public static void main(String[] args) {
//如果没有条件判断,始终为true
for(;😉 {
System.out.println(“张耕菀”);
}

}

}

7、循环结构的语句-while

(1)语法:
While(布尔条件){
//循环体:可以定义重复的操作
}
(2)执行流程

(3)使用案例
package day02;

public class while01 {
public static void main(String[] args) {
// int i=1;
// for(;i<=5;) {
// System.out.println(“冯坤”);
// i++;
// }

	int i=1;
	while(i<=5) {
		System.out.println("冯坤");
		i++;
	}
}

}
package day02;

public class while02 {
public static void main(String[] args) {

	int  sum=0;
	
	int  i=1;
	while(i<=100) {
		sum+=i;
		i++;
	}
	System.out.println(sum);
	
	int  ji=1;
	int  j=1;
	while(j<=5) {
		ji*=j;
		j++;
	}
	System.out.println(ji);
	
}

}

8、循环结构的语句-do while

(1)语法:
Do{
//循环体
}while(布尔条件);
(2)执行流程

(3)do while的特点
循环体至少执行一次,因为它先执行循环体在条件判断。
(4)使用案例
package day02;

public class doWhile01 {
public static void main(String[] args) {

// int i=1;
// while(i<=5) {
// System.out.println(“冯坤”);
// i++;
// }

	int i=1;
	do{
		System.out.println("冯坤");
		i++;
	}while(i<=5); 
}

}

package day02;

public class doWhile02 {
public static void main(String[] args) {

	int  sum=0;
	int  i=1;
	do {
		sum+=i;
		i++;
	}while(i<=100);
	System.out.println(sum);
	
	int  ji=1;
	int  j=1;
	do {
		ji*=j;
		j++;
	}while(j<=5);
	System.out.println(ji);
}

}

9、流程跳转语句-break和continue

(1)Break
可以用在switch中,还可以循环体中。
Break用在switch语句中,表示结束switch语句。
Break用在循环体中,表示结束循环语句。
public class break01 {
public static void main(String[] args) {
int i=1;
while(i<=10) {
if(i==5) {
break;
}
System.out.println(“java:”+i);
i++;
}

// if(i==5) {
// break;
// }

}

}
public class break02 {
public static void main(String[] args) {

	//有一只青蛙,掉到井里了,井深7米
	//白天向上跳3米,晚上滑下去2米
	//问:几天出来?
	int  js=7;
	int  h=0;
	int  day=0;
	
	while(true) {
		day++;
		h=h+3;//白天
		if(h>=js) {
			break;
		}
		
		h=h-2;//黑夜
	}
	
	System.out.println(day);
}

}

(2)Continue
只能用于循环体中。
表示结束当前循环的本次循环,然后进入下一次循环。
package day02;

public class continue01 {
public static void main(String[] args) {

	int  i=1;
	while(i<=10) {
		i++;
		
		if(i==5) {
			continue;
		}
		System.out.println("java:"+i);
		
	}
	
	
	for(int  k=1;k<=5;k++) {
		if(k==3) {
			continue;
		}
		System.out.println("web:"+k);
	}
	
}

}

10、双重循环

(1)打印九九乘法表
package day02;

public class Demo99 {

public static void main(String[] args) {
	
	//打印9行
	for(int  i=1;i<=9;i++) {
		//打印一行,打印i个
		for(int j=1;j<=i;j++) {
			System.out.print(j+"*"+i+"="+(j*i)+" ");
		}
		//打印换行
		System.out.println();
	}

}

}

public class break03 {
public static void main(String[] args) {

	for (int i = 0; i < 10; i++) {
		for (int j = 0; j < 5; j++) {
			System.out.println("aaa");
		}
		System.out.println("bbb");
	}
	
	
}

}

(2)双重循环中的break和continue
public class break03 {
public static void main(String[] args) {

	for (int i = 0; i < 10; i++) {
		for (int j = 0; j < 5; j++) {
			System.out.println("aaa");

// if(i==3) {
// break;
// }
}

		if(i==3) {
			break;
		}
		System.out.println("bbb");
	}
	
	
}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值