JAVA基础(四)——程序流程控制

本文详细介绍了Java编程中的分支结构,包括if...else和switch...case的使用,以及如何通过条件判断实现不同逻辑。同时,还探讨了循环结构,如for、while和do...while循环,并展示了它们在实际编程中的应用,包括循环控制关键字break和continue的用法。示例代码清晰地解释了各种结构的工作原理和实际操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、分支结构
1.1 if……else……
		int score = 45;
        if(score>=80){
            System.out.println("恭喜你,优秀");
            
        }else if(score>=60 && score<=80){
            System.out.println("恭喜你,及格了");
            
        }else{
            System.out.println("很遗憾,你没有及格");
            
        }
import java.util.Scanner;
public class HelloWorld {

    public static void main(String[] args) {
      	Scanner scan = new Scanner(System.in);
      	
        System.out.println("请输入你的身高:(cm)");
        int height = scan.nextInt();
        
        System.out.println("请输入你的财富:(千万)");
        double money = scan.nextInt();
        
        System.out.println("请输入你是否帅: (true or flase)");
        boolean isHandsome = scan.nextBoolean();
        
        if(height>=180 && money>=2 && isHandsome == true){
            System.out.println("我一定要嫁给他");
            
        }else if(height>=180 || money>=2 || isHandsome == true){
            System.out.println("比上不足比下有余,嫁吧")
            
        }else{
            System.out.println("不嫁");
        }
    }
}
1.2 switch……case……结构

在这里插入图片描述

注意
  • 根据switch中的表达式,依次匹配各个case中的常量,一旦匹配成功,则进入相应的case结构中,调用其执行语句,当调用完执行语句后,则仍然继续执行其他case结构中的执行语句,直到遇到break关键字或swicth-case结构末尾为止结束
  • break可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出swicth-case结构
  • swicth中的表达式,只能是以下六种数据结构之一:byte、short 、char、 int、 枚举类型、 String
  • case之后只能声明常量,不能什么范围
 int number = 0;
      switch (number){
          case 0:
              System.out.println("one");
              break;
          case 1:
              System.out.println("two");
              break;
          case 2:
              System.out.println("three");
              break;
          default:
              System.out.println("other");
              break;
      }
2、循环结构
2.1 for循环

在这里插入图片描述

  int sum = 0; // 记录所有偶数的总和
      int count = 0; // 记录偶数的个数
      for(int i = 1;i<=100;i++){
          if(i % 2==0) {
              System.out.println(i);  // 输出100以内的偶数
              sum += i;
              count++;
          }
      }
        System.out.println("总和为:"+sum);
        System.out.println("个数为:"sum);
    }
  • break关键字使用
	  int a  = 12;
      int b = 16;
      // 获取两个数较大值
      int min = (a > b)? b : a;
      // 获取两个数较小值
      int max = a > b ? a :b;
      // 获取最小公倍数
      for(int i=min;i >= 1;i--){
          if(a % i ==0 && b % i ==0){
              System.out.println(i);
              break;
          }
      }
      // 获取最大公约数
      for(int i=max;i<a*b;i++){
          if(i % a == 0 && i % b == 0){
              System.out.println(i);
              break;
          }
      }
2.2 while循环

for循环和while循环是可以相互转换的在这里插入图片描述

 	  int i = 1;
      while(i <= 100){
          if(i % 2 == 0){
              System.out.println(i);
          }
          i++
      }
2.3 do……while循环

在这里插入图片描述

	  int num = 1;
      do{
          if(num % 2 == 0 ){
              System.out.println(num);
          }
          num++;
      }while(num <= 100);
2.4 嵌套循环
  • 内层循环结构遍历一遍,只相当于外层循环体执行了一次
  • 假设外层循环需要执行m次,内层循环需要执行n次,此时内层循环的循环体一共执行了:m*n次
	for(int i =0;i<=5;i++){
          for(int j= 0;j<=5;j++){
              System.out.print("*");
          }
          System.out.println();
      }

实现99乘法表

 	for(int i =1;i<=9;i++){
          for(int j= 1;j<=i;j++){
              System.out.print(j+"*"+i+"="+(i*j)+" ");i
          }
          System.out.println();
      }

输入100以内所有质数

	for(int i=2;i<=100;i++){
         boolean isFlag = true;
         for(int j=2;j<i;j++){
             if (i%j ==0){
                 isFlag = false;
                 break;
             }
         }
         if(isFlag==true){
             System.out.println(i);
         }
     }
2.5 break和continue
  • break:结束当前循环
  • continue:结束当次循环
	for(int i=1;i<5;i++){
            if(i==3){
               break;
            }
            System.out.println(i);  // 1 2
        }
    for(int i=1;i<5;i++){
            if(i==3){
               continue;
            }
            System.out.println(i);  // 1 2 4 5
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值