热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaSE(4):分支结构

文章目录1、分支结构1.1if分支结构1.2ifelse分支结构1.3ifelseifelse分支结构1.4switchcase分支结构1、分支结构1.1if分支结构if(条件表达




文章目录


  • 1、分支结构
    • 1.1 if分支结构
    • 1.2 if else分支结构
    • 1.3 if else if else分支结构
    • 1.4 switch case分支结构


1、分支结构

1.1 if分支结构

if(条件表达式) {
语句块;
}

在这里插入图片描述


  • 判断条件表达式是否成立
    • 若成立,则执行语句块;
    • 若不成立,则跳过语句块;

/*
案例一:编程使用if分支结构查找两个整数中的最大值
*/
public static void main(String[] args) {

// 1.提示用户输入两个整数并使用变量记录
System.out.println("请输入两个整数:");
Scanner sc = new Scanner(System.in);
int ia = sc.nextInt();
int ib = sc.nextInt();

// 2.使用if分支结构找到最大值并打印
// 假设第一个数为最大值并记录
int max = ia;
if(ib > max) {
max = ib;
}
System.out.println("最大值是:" + max);
}

1.2 if else分支结构

if(条件表达式) {
语句块1;
} else {
语句块2;
}

在这里插入图片描述


  • 判断条件表达式是否成立
    • 若成立,则执行语句块1;
    • 若不成立,则执行语句块2;

/*
案例二:编程使用if else分支结构判断是否为负数和非负数
*/
// 1.提示用户输入一个整数并使用变量记录
System.out.println("请输入一个整数:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
// 2.使用if else分支结构判断负数和非负数并打印
if(num <0) {
System.out.println(num + "是负数!");
} else {
// 针对目前的非负数再次判断是正数还是零
if(num > 0) {
System.out.println(num + "是正数!");
} else {
System.out.println(num + "是零!");
}
}

1.3 if else if else分支结构

if(条件表达式1) {
语句块1;
} else if(条件表达式2) {
语句块2;
} else {
语句块n;
}

在这里插入图片描述


  • 判断条件表达式1是否成立:
    • 若成立,则执行语句块1;
    • 若不成立,则判断条件表达式2是否成立:
      • 若成立,则执行语句块2;
      • 若不成立,则执行语句块n;

/*
案例三:提示用户输入考试的成绩,使用if-else if-else分支结构判断所在等级并打印。
[90 ~ 100] 等级A
[80 ~ 89] 等级B
[70 ~ 79] 等级C
[60 ~ 69] 等级D
[0 ~ 59] 等级E
*/
// 1.提示用户输入考试成绩并使用变量记录
System.out.println("请输入您的考试成绩:");
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
// 2.使用if else if else分支结构判断所在的等级并打印
if(score >= 90 && score <= 100) {
System.out.println("等级A");
} else if(score >= 80) {
System.out.println("等级B");
} else if(score >= 70) {
System.out.println("等级C");
} else if(score >= 60) {
System.out.println("等级D");
} else {
System.out.println("等级E");
}

1.4 switch case分支结构

switch(变量/表达式) {
case 字面值1: 语句块1; break;
case 字面值2: 语句块2; break;
...
default:语句块n;
}

在这里插入图片描述


  • 计算变量/表达式的数值 => 判断是否匹配字面值1:


    • 若匹配,则执行语句块1 => 执行break跳出当前结构
    • 若不匹配,则判断是否匹配字面值2:
      • 若匹配,则执行语句块2 => 执行break跳出当前结构
      • 若不匹配,则执行语句块n
  • switch()中支持的数据类型有: byte、 short、 char以及int类型,从jdk1.5开始支持枚举类型,从jdk1.7开始支持String类型。

/*
案例四:编程使用switch case分支结构实现考试成绩的等级判断
*/
// 1.提示用户输入考试成绩并使用变量记录 0 ~ 100
System.out.println("请输入您的考试成绩:");
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
// 2.使用switch case分支结构实现考试成绩的等级判断
switch(score / 10) {
case 10: System.out.println("等级A"); break;
case 9: System.out.println("等级A"); break;
case 8: System.out.println("等级B"); break;
case 7: System.out.println("等级C"); break;
case 6: System.out.println("等级D"); break;
default: System.out.println("等级E");
}


推荐阅读
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • 使用C++编写程序实现增加或删除桌面的右键列表项
    本文介绍了使用C++编写程序实现增加或删除桌面的右键列表项的方法。首先通过操作注册表来实现增加或删除右键列表项的目的,然后使用管理注册表的函数来编写程序。文章详细介绍了使用的五种函数:RegCreateKey、RegSetValueEx、RegOpenKeyEx、RegDeleteKey和RegCloseKey,并给出了增加一项的函数写法。通过本文的方法,可以方便地自定义桌面的右键列表项。 ... [详细]
  • 流数据流和IO流的使用及应用
    本文介绍了流数据流和IO流的基本概念和用法,包括输入流、输出流、字节流、字符流、缓冲区等。同时还介绍了异常处理和常用的流类,如FileReader、FileWriter、FileInputStream、FileOutputStream、OutputStreamWriter、InputStreamReader、BufferedReader、BufferedWriter等。此外,还介绍了系统流和标准流的使用。 ... [详细]
  • 本文小编为大家详细介绍“Java中的逻辑结构模式有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中的逻辑结构模式有哪些”文章能帮 ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 猜字母游戏
    猜字母游戏猜字母游戏——设计数据结构猜字母游戏——设计程序结构猜字母游戏——实现字母生成方法猜字母游戏——实现字母检测方法猜字母游戏——实现主方法1猜字母游戏——设计数据结构1.1 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • ***byte(字节)根据长度转成kb(千字节)和mb(兆字节)**parambytes*return*publicstaticStringbytes2kb(longbytes){ ... [详细]
author-avatar
大佬銘銘銘銘銘
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有