页首Html代码

02-Java流程控制

2.1 条件语句

条件语句就是根据不同的条件执行不同的语句,条件语句包括if条件语句和switch多分枝条件语句。

2.1.1 if条件语句

if 条件语句它用于某个条件成立时,执行某一段程序,而另外一种情况系啊执行另外的语句,关键字if之后就是作为条件的布尔表达式,如果该表达式返回的结果为true,则执行其后面的语句,如果为false则不执行if条件之后的语句。if条件语句可以分为单分支if、双分支 if...else 和if...else if多分支。
单分支

if (布尔表达式) {
    语句序列
}

布尔表达式:必要的参数,表示它最后返回的结果必须是一个布尔值。

if...else语句
if...else语句是最常用的一种形式,如果满足某种条件,就执行某种处理,否则就执行另外一种处理,语法格式为:

布尔表达式:必要的参数,表示它最后返回的结果必须是一个布尔值。
if...else if语句
if...else if多分支语句用于针对某一件事的多种情况进行处理。表现为:如果满足某种条件,就进行某种处理,如果满足另外一种,就执行另外一种处理,语法格式为:

if (条件表达式1) {
    需要执行的语句
}
else if(条件表达式2) {
    需要执行的语句
}
else if(条件表达式3) {
    需要执行的语句
}

条件表达式:必要的参数,表示它最后返回的结果必须是一个布尔值。

2.1.2 switch多分支语句

switch(表达式) {
  case常量值1:
  语句块1;
  break;
  case常量值2:
  语句块2;
  break;
  case常量值n:
  语句块n;
  break;
  default:
  语句块n+1;
  break;
}

switch语句表达式的值必须是整数型或字符型,常量值1-n必须也是整形或字符型。首先计算表达式的值,如果表达式的值和某个case后面的常量值相同,则执行该case后面的语句。default语句为可选的,如果它不存在,而且switch语句表达式的值不和任何case的常量相同,switch则不做任何处理。

public class Getif {
    public static void main(String[]args) {
       System.out.println("今天是星期几:");
       int week = 2;
       switch (week) {//指定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;
           default:
               System.out.println("输入有错");
       }
    }
}
case的值可以为整数,但是绝不可以是实数,下面的代码时不和法的
case 1.1;
常量的表达式的值可以是字符,但是一定不能是字符串
case "ok" //错误

验证登录信息

import java.util.Scanner;

public class CheckLongin {
    public static void main (String[]args) {
        //接收用户输入的登录用户名和登录密码
        //然后通过if条件语句判断用户名和密码是否正确
        //并输出登录验证的结果
        Scanner scanner = new Scanner(System.in);
      //创建扫描器,接收用户输入
        System.out.println("请输入用户名");
        String username = scanner.nextLine();//接收用户输入
        System.out.println("请输入密码");
        String password = scanner.nextLine();//接收用户输入的密码
        if (! username.equals("admin")) {
            System.out.println("用户名非法");

        }else if (password.equals("1234556")) {
            System.out.println("登录密码错误");
        }else {
            System.out.println("登录成功");
        }
    }
}

为新员工分配部门

import java.util.Scanner;

public class Example {
    public static void main(String[]args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入新员工姓名:");
        String name = scanner.nextLine();//接收员工姓名
        System.out.println("输入新员工应聘的编程语言:");
        String language = scanner.nextLine();//接收员工应聘的编程语言
        switch (language.hashCode()) {
            case 3254818:
            case 2301506:
            case 2269730:
                System.out.println("员工" + name + "被分配到Java部门");
                break;
            case 3104:
            case 2112:
                System.out.println("员工" + name + "被分配到C++部门");
            break;
            default:
                System.out.println("公司不需要" + language + "开发");
        }

    }

}

在switch中,每个case关键字就是一个条件的分支,但是对于多个条件相同业务处理情况,可以把多个case分支关联在一起,省略它们之间的break语句。

2.2 循环语句

循环语句就是在满足一定条件的下反复执行某一个操作,Java提供了3种常用的循环,分别是while循环,do..while循环和for循环。

2.2.1 while循环语句

while (条件表达式) {
  //执行的语句
}

当条件表达式返回的值为真,则执行{ }中的语句,执行完 { } 中的语句后,重新判断条件表达式的返回值,直到表达式返回的结果为假时,退出循环。

public class GetSum {
    public static void main(String[] args) {
        //通过while循环将整数1-10相加
        int x = 1;//定义int型变量x
        int sum = 0;//定义变量用于保存相加后的结果
        while (x <= 10) {
            sum = sum + x;
            x++;
            //while循环语句,当变量满足条件表达式时
            //执行循环语句
        }
        System.out.println("1到10的和是:" + sum);
    }
}

2.2.1 do...while循环语句

do...while循环和while循环类似,它们的区别就是while循环先判断条件是否成立,再执行循环体,do...while循环则先执行一次循环后,再判断条件是否成立。do...while循环语句中程序至少被执行一次。

do {
  执行的语句
}
while (条件表达式);

2.2.2 for 循环语句

for (表达式1; 表达式2; 表达式3;) {
  需要执行的语句;
}

表达式1:初始化表达式,负责完成变量的初始化。
表达式2:循环条件表达式,值为boolean,指定循环的条件。
表达式3:循环后操作表达式,负责修整变量,改变循环条件。

执行for循环时,首先执行表达式1,完成某一变量的初始化工作;下一步判断表达式2的值,如果表达式2的值为true,进入循环体;在执行完循环体后计算表达式3,表达式3通常是增加或减少循环控制变量的一个表达式,这样子循环就结束了。第二轮循环从计算表达式2开始,如果表达式2返回true,继续循环,否则跳出整个for语句。

public class Circulate {
    public static void main(String[] args) {
        //使用for循环计算2-100之间所有偶数的和
        int sum = 0;
        for (int i = 2; i <= 100; i+=2) {
            sum = sum + i;
        }
        System.out.print("2-100之间的所有偶数的和为" + sum);
    }
}

2.2.3 foreach 循环语句

foreach 是 for循环的特殊简化版本,foreach循环在遍历数组方便有很大的遍历,语法格式如下:

for (匀速变量x: 遍历对象obj) {
  引用了x的java语句;
}
public class Repetition {
    public static void main(String[] args) {
        //使用foreach语句遍历数组
        int arr[] = {7,10,1};
        for (int x: arr) {
            System.out.println(x + "\t");
        }
    }
}

2.3 跳转语句

Java提供了3种跳转语句,分别是break、continue、return。

2.3.1 break语句

break可以应用在循环语句,用于强行对出循环,也就是忽略循环体中任何其他语句和循环的条件限制。

2.3.2return 语句

return语句可以从一个方法返回,并把控制权交给调用它的语句,语法格式如下:

return 表达式;

表达式:可选参数,表示要返回的值,它的数据类型必须和方法声明中的返回值欸行一致。
return语句通常放在被调用方法的最后,用于退出当前方法,并返回一个值。

posted @ 2022-03-24 22:59  与或非丶  阅读(60)  评论(0)    收藏  举报