Java中流程控制语句

想要了解流程控制语句就必须先提一下数据输入,毕竟没有数据的话就执行不了后面的流程控制

数据输入

数据输入是程序获取指获取用户键盘录入的数据,那么在java语言中,怎样实现呢?

我们可以通过 Scanner 类来获取用户的输入。

Scanner

scanner是扫描器的意思,主要用于与用户进行交互。扫描器允许程序从不同的地方获取数据并赋值给变量,从而增加程序的多样性、交互性。

使用步骤

  1. 导包:

import java.util.Scanner;

  1. 创建Scanner对象:

Scanner sc = new Scanner(System.in);

  1. 使用Scanner:

String str = sc.next();

package com.blb;
​
//1.导包
import java.util.Scanner;
​
public class Demo1 {
​
    public static void main(String[] args) {
        //2.创建一个Scanner对象
        //数据类型  变量名 = new 数据类型();
        Scanner sc = new Scanner(System.in);
        
        //3.从扫描器中获取一个字符串
        String str = sc.next(); //sc.next();会进入阻塞状态(等待状态),等待用户输入
        
        System.out.println("111==="+str);
    }
}

包package

包其实指的是目录,作用主要是方便管理代码。

使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。

Scanner 类在java.util包下,所以需要将该类导入。

现在来讲讲流程控制语句

if分支语句

if单分支语句

1.if语句介绍

语法格式:

if(条件表达式){
    语句体;
}
//其它语句

2.if语句执行流程

(1) 首先计算条件表达式的值;

(2) 如果条件表达式的值为true就执行语句体;

(3) 如果条件表达式的值为false就不执行语句体;

(4) 继续执行后面的其他语句。

if...else双分支语句

1.语法格式:

if(条件表达式) { 
    语句体1;
} else() {
    语句体2;
}
//其它语句

2.if...else语句执行流程

(1) 首先计算条件表达式的值;

(2) 如果条件表达式的值为true就执行语句体1;

(3) 如果条件表达式的值为false就执行语句体2;

(4) 继续执行后面的其他语句。

if...else if...else多分支语句

1.if..else if...else语句介绍

if (条件表达式1) {
    语句体1;
} else if (条件表达式2) {
    语句体2;
}
...
}else if (条件表达式n) {
    语句体n;
} else {
    语句体n+1;
}
//其它语句

2.if..else if...else执行流程

(1) 首先计算条件表达式1的值,判断其结果是true还是false;

(2) 如果是true就执行语句体1,然后执行最下面的其他语句;

(3) 如果是false就继续计算条件表达式2,判断其结果是true还是false;

(4) 如果是true就执行语句体2,然后执行最下面的其他语句;

(5) 如果是false就继续计算条件表达式…,判断其结果是true还是false;

(6) …

(7) 如果没有任何条件表达式为true,就执行else中的语句体n+1。

switch分支语句

1.switch语句格式

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

2.Switch执行流程

  1. 首先计算出表达式的值;
  2. 接着,自上而下和case依次比较,一旦有对应的值匹配,就会执行相应的语句,在执行的过程中,遇到break就会结束。
  3. 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

case的穿透性

在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力学习Java的鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值