流程控制语句

作者: YYece | 来源:发表于2017-10-25 15:06 被阅读0次

一、顺序结构

顺序结构:是程序中最简单的基本流程控制,没有特定的语法结构,按照先后顺序,依次执行。总的来说就是前面的先执行,后面的后执行。

二、分支结构

  1. if语句(单分支)
if(条件表达式){

                       执行语句;

                 }
  • 注:表达式的结果是一个布尔值,如果是true,直接进入if的方法体中,如果结果为false,则跳过if的方法体,继续执行。
  1. if....else 语句(双分支)
if(表达式){
       语句组1
          }

else  {
       语句组2
          }
  • 注: 双分支结构else必须与if 配对使用,若else空缺则构成单分支结构
  1. if...else if 语句(多分支)
if(表达式1){
       语句组1
          }

else  if(表达式2)  {
       语句组2
          }

else  if (表达式3) {
       语句组3
          }
.......

else  if (表达式n) {
       语句组n
          }
else  {    //可以省略
       语句组n+1
          }

三、选择结构

switch语句

switch(表达式){

    case 值1:

         执行语句1;

     break; // switch的表达式 只能是 byte、short、int、char;

case 值2: // case的语句是无序的;case 的值同时加载到内存中;

         执行语句2;   //   找到对应的case值作为程序入口,使用break语句来作为结束;

 break;                                

  ……

 default:

            执行语句;

    break;(可以省略)

 }
  • 注:

1,switch语句中不能忘记break,否则会有贯穿现象。

2,switch的应用有所限制,其表达式只能应用于byte,short,int,char

  • if语句和switch语句的异同点:
             if:
    
                1、对具体的值进行判断;
    
                2、对区间进行判断;
    
                3、对运算结果是boolean类型的表达式进行判断;
    
             switch:
    
                1、对具体的值进行判断;
    
                2、值的个数必须是有限的;
    

    三、循环语句

1.while语句

  while(条件表达式){

                              循环语句;

               }
  1. do....while语句
do{

                          循环语句;

                     }while(条件表达式);
  • do..while 语句的特点:无论条件是否满足,都会执行至少一次;
  1. for语句
               for(初始化表达式;条件表达式;循环后表达式){

                              循环语句;

               }
  • for循环的执行顺序:首先执行初始化表达式,判断循环条件,如果条件返回值为true,执行循环语句,然后执行循环后表达式,再次判断循环条件

  • for循环与while循环的关系:
    1、for与while可以互换;
    2、for循环可以将变量定义到初始化表达式中,如只需要将该变量应用在循环体中,建议使用for循环,可以及时释放内存空间;

  • 循环需要注意的情况:
    1、需要有循环的条件;
    2、需要控制循环的次数;

否则就会变成无限循环(无限占用内存):

               while(true){

                              循环语句;

               }
或
               for( ;;){

                              循环语句;

               }
    1. 终止循环:

(1)break

  • 注:1、break必须使用在switch或者循环语句中;
    2、在switch或循环语句中,break单独使用时,下面不允许有代码语
    句;
    3、默认情况下,break只能跳出语句所属的最近一层循环;

(2) continue;

  • 注:continue是终止本次循环(只能在循环内部),继续下一次循环;

  • 如果想要指定循环跳出的位置,可以使用给循环添加标记的方式,跳出时指明跳出位置即可;

             flag1:(over)
        for( ;;){
    
                            循环语句;
    
                            break flag1(over);
    
             }
    
  1. foreach语句

Java5引入了一种主要用于数组的增强型for循环,进行数组的遍历。

      for (声明语句 : 表达式) {
            //代码句子
         }
  • 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。

  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

四、练习

//1.编写一个程序,读取用户输入的3个非零数据,判断并输出这3个值是否能组成一个三角形的3条边。
package excise;
import java.util.Scanner;
public class practice1 {

    public static void main(String[] args) {
        
        Scanner s = new Scanner(System.in);
        System.out.println("请输入三个非零数:\n");
        
        System.out.printf("a= ");
        double a = s.nextDouble();
        
        System.out.printf("b= ");
        double b = s.nextDouble();
        
        System.out.printf("c= ");
        double c = s.nextDouble();  
        
        if (a+b>c & a+c>b & b+c>a) {
            System.out.println("能组成一个三角形");
        }
        else
            System.out.println("不能组成一个三角形");
    }

}
//2.用switch语句编写一个完成两个整数四则运算的程序
package excise;
import java.util.Scanner;
public class practice2 {

    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        
    System.out.println("请输入运算符:");
    
    String  operato = s.nextLine();
    
    System.out.println("请输入两个整数:");
    
    System.out.printf("a=");
    int a = s.nextInt();
    
    System.out.printf("b=");
    int b = s.nextInt();
    
    switch(operato) {
    case "+":
        System.out.println(a + operato + b +"=" +(a+b));
        break;
    case "-":
        System.out.println(a + operato + b +"=" +(a-b));
        break;
    case "*":
        System.out.println(a + operato + b +"=" +(a*b));
        break;
    case "/":
        System.out.println(a + operato + b +"=" +(a/b));
        break;
        default:
            System.out.println("您输入的运算符有误");
    }
    }

}

相关文章

  • JavaScript-流程控制语句

    一、if流程控制语句 二、switch流程控制语句 三、流程控制语句

  • 【骚全带你学Java---八、流程控制语句】

    java的流程控制语句包含条件语句和循环语句 一.什么是流程控制语句? ·流程控制语句:可以控制程序的执行流程。 ...

  • 03学习Python

    学习记录,欢迎指出错误 流程控制 Python中流程控制语句有 if语句 for语句 while语句 if语句 在...

  • 2018-12-11

    流程控制 流程控制语句:--条件判断语句--条件分支语句--循环语句 条件判断语句(if语句) 语法:if(条件表...

  • Python基础重构-1.3流程控制

    流程控制语句 流程控制语句用来实现对程序流程的选择、循环和返回等进行控制,Python中主要的流程控制包括if(判...

  • Shell流程控制

    Shell流程控制 简单流程控制语句 单分支if语句 语法格式 双分支if语句 语法格式 多分支if语句 语法格式...

  • # shell流程控制语句

    shell流程控制语句 任何编程语言都离不开流程控制语句,其实编程基本上就是掌握了流程控制语句,然后加上函数(或者...

  • 流程控制语句、条件判断语句、多重条件判断语句、数组、数组、数组常

    流程控制语句:通过流程控制语句可以控制程序执行流程,使程序可以根据一定的条件来选择执行 语句分类: 1.条...

  • Python程序结构

    2018年6月27日笔记 python流程控制 1.python流程控制语句结构 4种流程控制语句结构:ifif ...

  • day2.5_流程控制

    程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。其流程...

网友评论

    本文标题:流程控制语句

    本文链接:https://www.haomeiwen.com/subject/gwhzuxtx.html