JAVA—— 逻辑 结构

三种逻辑结构

Java中也有三种逻辑结构:
1,顺序结构
2,选择结构
3,循环结构
(一)顺序结构

顺序结构即按照顺序执行:
举例代码如下:

//以下代码按照顺序执行
//计算两个数的和

 public class Example{
 public static void main(String[] args){
  int num1 = 2;
  int num2 = 4;
  int sum = num1 + num2;
  System.out.println("sum = "+sum);
 }
}

运行结果如下:
在这里插入图片描述
(二)分支结构

分支结构即选择结构。
1,if 结构


基本数据类型比较(即表达式值)可以用 bool 类型。
引用数据类型比较(即表达式值) 应该使用 equals。
(字符串和字符串比较不能用 ==,应该用equals)
Java中没有 1,0 表示真假。用bool值表示真假,true为真,false为假。



形式1:

if(布尔表达式){    
//条件满足时执行代码   
 }
 else{    
 //条件不满足时执行代码 
    }

举例如下:

//找出两个数中的最大值

 public class Example2{
 public static void main(String[] args){
  int num1 = 2;
  int num2 = 4;
  int max = 0;
  if(num1 > num2){
   max = num1;
  }
  else{
   max = num2;
  }
  System.out.println("max = "+max);
 }
}

运行结果如下:
在这里插入图片描述

形式2:

if(布尔表达式){
                //条件满足时执行代码
        }
        else if(布尔表达式){ 
                //条件满足时执行代码
         } ...
         else{ 
                //条件都不满足时执行代码 
         }

举例如下:

//以下代码是找出三个数中的最大值

 public class Example2{
 public static void main(String[] args){
  int num1 = 2;
  int num2 = 4;
  int num3 = 8;
  int max = 0;
  if(num1 > num2){
   max = num1;
  }
  else if(num2 > num3){
   max = num2;
  }
  else{
   max = num3;
  }
  System.out.println("max = "+max);
 }
}

运行结果如下:
在这里插入图片描述

2,switch结构

如果有多个值进行判断,则使用switch结构。
注意:

  • switch后面的常量可以为 数字,枚举,字符,字符串;
    C语言中switch后面的常量只能为 数值(常量,常量表达式都可以) 或字 符。
  • 若多个case对应的值一样,则只写一条语句即可。
  • case命令后最好加 break 或者 continue,就不用继续执行下面的语句。
  • 命令后如果超出一条语句,用大括号括起来最好。



switch结构形式为:

//输入第几天,判断是星期几
//如果输入的数字不在1-7内,则用default判断错误

 switch(数字|枚举|字符|字符串){
    case 内容1 : {
            内容满足时执行语句; 
            [break;] 
                          
    case 内容2 : { 
           内容满足时执行语句; 
            [break;]  
                  }    ...   
    default:{ 
           内容都不满足时执行语句; 
             [break;]
              }   
           }
 

运行结果如下:
在这里插入图片描述
举例如下:

//输入数字,判断是 工作日还是休息日
//多个case对应一个执行语句。

public class Example2{
 public static void main(String[] args){
  int week = 5;
  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;
  }
 }
}
public class Example2{
 public static void main(String[] args){
  int week = 5;
  switch(week){
   case 1:
   case 2:
   case 3:
   case 4:
   case 5:
   System.out.println("今天是工作日");
   break;
   case 6:
   case 7:
   System.out.println("今天是休息日");
   break;
  }
 }
}

运行结果如下:
在这里插入图片描述

(三)循环结构

循环使用原则:

  1. 对于不知道循环执行次数,但知道循环结束条件的,使用while.
  2. 明确知道循环次数的,使用for2. 明确知道循环次数的,使用for.
    1,while 循环
while(循环结束条件判断){
    循环语句; 
    修改循环结束判断;  
      }

2,do…while循环

do…while语句的特点:最少执行一次。

do{
    循环语句;  
    修改循环结束判断;
     }
   while(循环结束条件判断);
 

3,for循环

for(循环初始化;循环结束判断;修改循环结束条件){
    循环体; 
    }

具体问题实现上述三种循环:
打印1-4之间的自然数
1,使用while 循环

 public class Example2{
 public static void main(String[] args){
  int num = 1;
 while(num <= 4){
  System.out.print(num+"\t");
  num ++;
 }
 }
}

运行结果如下:
在这里插入图片描述
2,使用do … while循环

public class Example2{
 public static void main(String[] args){
  int num = 1;
  do{
   System.out.print(num+"\t");
   num++;
  }
     while(num <= 4);
 }
}

运行结果如下:
在这里插入图片描述

3,使用for 循环

 public class Example2{
 public static void main(String[] args){
  for(int num = 1;num <= 4;num++){
   System.out.print(num+"\t");
  }
 }
}

运行结果如下:
在这里插入图片描述

  • 控制循环
    (1)continue
    执行到此语句时会跳过当前循环的剩余部分,返回循环判断。
    (2)break
    直接跳出循环。


    举例如下:
    1,continue控制循环
//找出1-4中不能被2整除的数

 public class Example2{
 public static void main(String[] args){
  int num = 0;
  for(num = 1;num <= 4;num++){
   if(num % 2 == 0){
    continue;
   }
   else{
    System.out.print(num+"\t");
   }
  }
 }
}

在这里插入图片描述
2,break控制循环

//在1-4的数中,一旦遇到某个数能被2整除,则退出整个循环

 public class Example2{
 public static void main(String[] args){
  int num = 0;
  for(num = 1;num <= 4;num++){
   if(num % 2 == 0){
    break;
   }
   else{
    System.out.print(num+"\t");
   }
  }
 }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xmfjmcwf/article/details/83748836