Skip to content

流程控制、循环结构

  • 程序的执行顺序:从上到下依次执行

选择结构

(分支结构):根据不同的判断结构进入到不同的代码段 if else switch case

java
// 结构体1:主要用在一种情况的输出
if(判断表达式) 

if(判断语句){
	//符合条件输出的结果
}

// 结构体2:主要用在两种及伊桑情况下的输出
if(判断表达式){
	符合条件输出的代码
} else if(判断表达式2){   

} else{
	不符合条件输出的代码段
}
java
// 1. key可以是int  byte char short类型,从jdk7.0开始加入String类型
// 2. case对应的值信息不能重复,值信息不能为变量,只能是常量
// 3. default可以放置到任何位置,break加,建议放置最后
  switch(key){
   case 值1:
	   syso();
	   break;
   case 值2:
	   syso();
	   break;
   case 值3:
	   syso();
	   break;
   //.....
   default:
	   syso();
	   break;
}
// 如果有多个相同输出的时候可以简写成:
switch(key){
   case 值1:
   case 值2:
   case 值3:
	   syso()
	   break;
}

注:break可以跳出switch语句块,也可以用在循环结构体中

if else 和switch case 区别

  • 相同点:都是用于分支结构中的语句
  • 不同点:
    • switch优点:结构清晰
    • switch缺点:不适合用于判断一个区域范围内
    • if语句:适合用于判断区域范围的时候
  • 如果两种都可以用:使用switch,效率高

循环结构

while

java
public class Demo {

	public static void main(String[] args) {
		//定义初始值
		int num=0;
		while(num<5){ //判断是否打印次数结束
			System.out.println("你好");
			//打印一次加上一次
			++num;
			//++num 或者num=num+1num+=1                     

		}

	}

}

案例1:实现1+2+3+4+...+100=?

  1. 定义初始值 int num=1
  2. 定义存放和的变量信息 int sum=0;
  3. 定义while
java
 while(num<=100){
      syso(num);//每次遍历到的数字
      sum+=num;
      num++;//改变变量值
 }

案例2:实现:100以内偶数的和

  1. 定义初始值 int i=1; int sum=0;
  2. while实现`
java
 while(i<=100){
	syso(i);
	if(i%2==0){//偶数
	  sum+=i;
    }
    i++;
}

3. 输出打印`

案例3:输出打印200以内能被3同时被5整除的数字

java
public class Demo5_11 {
   public static void main(String[] args) {
	 //定义初始值
	 int num=1;
	 while(num<=200){//判断200以内的输出
	  if(num%3==0 && num%5==0){
		  System.out.println(num);
	  }
	  num++;//循环变量的变化规律
	 }
   }
}

do while

结构体:

java
 do {
   循环体;
 } while(判断表达式);

do-while与while区别:

    • do-while先执行循环体,执行完成一次之后再判断条件
      • 如果条件成立,继续执行循环体,不符合结束
      • 至少执行一次循环体
  • while:先判断,条件成立执行循环体,条件不成立直接结束

for

for循环:

结构体:

for(表达式1;表达式2;表达式3){

要循环的内容;

}

解析:

表达式1:定义初始值

表达式2:循环条件的判断

表达式3:循环变量的变化规律

执行顺序:

  1. 执行定义初始值表达式1
  2. 执行表达式2,进入判断条件
  3. 如果成立,执行循环体
  4. 执行表达式3,循环变化规律的改变
  5. 循环执行步骤2-4

for结构体

for执行顺序

案例解析

注意点

进入死循环快速方式

-在java中进入死循环方式 while(true){} for(;true;){}

break 、continue应用

不带标记用法:主要用在单个循环中

带标记的用法:主要用在嵌套循环

break continue目的主要为了更好的控制流程结构

break: 跳出循环体,不再继续执行剩下的循环体 结束

continue: 跳出循环,表示跳出当次循环,会继续执行剩下的循环体

java
public class Demo7_7 {

	public static void main(String[] args) {
		//外循环  1,2,3,4,5
		outer:for(int i=1;i<=5;i++){
			//内循环
			for(int j=1;j<=5;j++){
				//当j==3的时候跳出循环体
				if(j==3){
				   //跳出到哪个循环体
				   break outer;
				}
				System.out.print("i="+i+",j="+j+"\t");
			}
			//换行
			System.out.println();
		}
	}

}
java

public class Demo7_8 {
   public static void main(String[] args) {
	 //外循环 
	  wai:for(int i=1;i<=5;i++){
		  //换行
		  System.out.println();
		  //内循环
		  for(int j=1;j<=5;j++){
			  //当j=3的时候跳出当次循环
			  if(j==3){
				//跳出到哪个循环的当次循环
				continue wai;  
			  }
			  System.out.print("i="+i+",j="+j+"\t");
		  }
	  }
   }
}

循环嵌套

嵌套循环:只要有循环嵌套情况出现都称之为嵌套循环

执行规律:外循环走一次,内循环走一遍

转义字符

  • "\"开始
  • \t:制表符,相当于在键盘上按了tab键
  • \n:换行
  • \":输出双引号
  • \':输出单引号
  • \\:文件路径信息