百知教育-Java第三章——流程控制

百知教育学习- 胡鑫喆讲师-第三章——流程控制

一、if条件分支结构

1.选择结构与分支结构
package day3;
public class TestIf{
	public static void main(String[] args){
		if(布尔表达式){代码块  }
		}
}
2.多重if选择结构

语法:

if(布尔表达式1){
	//代码块1
}else if(布尔表达式2){
	//代码块2
}
else{
	//代码块3
}
3.嵌套if选择结构

语法:

if(外层表达式){
	if(内层表达式1){
	//内层代码块1
	}else{
		//内层代码块2
	}
}else{
	//外层代码块2
}

二、switch_case结构

语法:

switch(变量|表达式){
	case 值1:
				逻辑代码1;
	case 值2:
				逻辑代码2;
	case 值n:
				逻辑代码n;
	default:
				未满足的逻辑代码;
}
  • 可判断类型:
    byte、short、int 、char、String(JDK7+)
  • 执行流程:
  • 如果变量中的值等于值1,则执行逻辑代码1.
  • 如果变量中的值等于值2,则执行逻辑代码2.
  • 如果变量中的值等于值n,则执行逻辑代码n.
  • 如果变量中的值没有匹配的case值时,执行default中的逻辑代码。
    eg:
package day3;
public calss TestSwitch{
	public static void main(String[] args){
	/*
		switch(int 表达式){
		 	case 值1: 代码块1
		 	case 值2: 代码块2
		 	default:	代码块
		}
		*/
		java.util.Scanner s= new java.util.Scanner(System.in);
		int a=s.nextInt();
		switch(a){
			case 1: System.out.println(1);
						break;
			case 2: System.out.println(2);
						break;
			case 3: System.out.println(3);
						break;
			default: System.out.println("Others");
			}
	}
}

三、不确定循环

1.循环结构

概念:通过某个条件,重复执行一段逻辑代码。

whilie循环

语法:

while(布尔表达式){
	//逻辑代码(循环操作)
}

eg:

package day3;
public calss TestSwitch{
	public static void main(String[] args){
		int i=1;
		int result=0;
		while(i<=100){
			result+=i;
			i++;
			}
			System.out.println(result);
		}
	} 
do while 循环

语法:

do{
	逻辑代码(循环操作)
	}while(布尔表达式)
  • 执行流程:
  • 先执行一次循环操作之后,再进行布尔表达式判断。
  • 如果结果为true,则再执行循环操作。
  • 如果结果为false,才会退出循环结构,执行后续代码。

四、for循环

语法:

for(初始部分;循环条件;迭代部分){
	//循环操作
}

五、break_continue

1.流程控制
  • break:终止、跳出switch、循环结构。
  • continue:跳出本次循环。
2.给程序起名跳出——自定义起名
loop:for(int i=1;i<=5;i++){  //loop可以换为其他的
	for(int j=1;j<=44;j++){
		if(i==4&&j==3)
		break loop;						//这里要照应loop
		System.out.print("i="+i+"j="+j+"\t");
	}
	System.out.println();
}

六、局部变量

1.局部变量
  • 概念:声明在函数内部的变量,必须先赋值 再使用。
  • 作用范围:定义行开始到所在的代码块结束。
  • 注意:多个变量,在重合的作用范围内,不可出现重名(命名冲突)。
    if(ture){
    int a=20; //只作用于ture内。
    }

七、案例_百钱买百鸡

1.水仙花数

题目:公鸡3元钱一只,母鸡2元钱一只,小鸡1元钱3只。100元买100只鸡。

package day3;
public class Exc1{
	public static void main(String[] args){
		for(int a=0;a<=100;a++){
			for(int b=0;b<=100;b++){
				int c=100-a-b;
				if(c%3!=0)
				continue;
				int m=a*3+b*2+c/3;
				if(m==100){
					System.out.println(a+“ ”+b+“ ”+c);
					}
				}
			}
		}
	}

优化后:

package day3;
public class Exc1{
	public static void main(String[] args){
		for(int a=0;a<=133;a++){
		int maxb=(100-3*a)/2;
			for(int b=0;b<=maxb;b++){
				int c=100-a-b;
				if(c%3!=0)
				continue;
				int m=a*3+b*2+c/3;
				if(m==100){
					System.out.println(a+“ ”+b+“ ”+c);
					}
				}
			}
		}
	}

八、案例_打印等腰三角形

  • 找规律,总结
package day3;
public class Exc2{
	public static void main(String[] args){
		Scanner s=new Scanner(System.in);
		int n=s.nexInt();
		for(int i=1;i<=n;i++){
			for(int j=0;i<n-i;i++){						//打印n-i个空格
				System.out.print(' ');	
			}
			for(int j=0;i<2*i-1;i++){					//打印2*i-1个*
				System.out.print(‘*’);	
			}
				System.out.println();				//换行	
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值