【Java开发指南 | 第十三篇】Java条件语句

读者可订阅专栏:Java开发指南 |【CSDN@秋说】

在这里插入图片描述

文章目录

    • if 语句
    • if...else 语句
    • if...else if...else 语句
    • 嵌套的 if…else 语句
    • switch 语句

Java 中的条件语句用于根据条件来执行不同的代码块。条件语句允许程序根据表达式的结果选择性地执行代码。

条件语句分为if 语句、if…else 语句、if…else if…else 语句、嵌套的 if…else 语句及switch语句五种。

if 语句

if 语句用于在条件为真时执行一段代码块。如果条件为真,则执行 if 语句中的代码块;如果条件为假,则跳过 if 语句中的代码块。

if (condition) {
    // 在条件为真时执行的代码块
}
public class ice {
    public static void main(String[] args) {
        int i = 0;
        if(i==1)
        {
            System.out.println("ice");
        }
    }
}

在这里插入图片描述

if…else 语句

if...else 语句用于在条件为真时执行一个代码块,而在条件为假时执行另一个代码块。

if (condition) {
    // 在条件为真时执行的代码块
} else {
    // 在条件为假时执行的代码块
}
public class ice {
    public static void main(String[] args) {
        int i = 0;
        if(i==1)
        {
            System.out.println("ice");
        }
        else {
            System.out.println("ICE");
        }
    }
}

在这里插入图片描述

if…else if…else 语句

if...else if...else 语句用于在多个条件之间进行选择,它允许您测试多个条件并执行相应的代码块。当条件列表中的条件顺序地被检查,并且第一个为真时,与该条件相关联的代码块将被执行。如果没有条件为真,则执行最后的 else 块(如果存在)。

if (condition1) {
    // 在条件1为真时执行的代码块
} else if (condition2) {
    // 在条件2为真时执行的代码块
} else {
    // 在以上条件都不为真时执行的代码块
}
public class ice {
    public static void main(String[] args) {
        int i = 0;
        if(i==1)
        {
            System.out.println("ice");
        }
        else if(i==2){
            System.out.println("ICE");
        }
        else{
            System.out.println("choice");
            //i!=1,i!=2,所以输出choice
        }
    }
}

在这里插入图片描述

嵌套的 if…else 语句

我们可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。

语法:

if(布尔表达式 1){
   如果布尔表达式 1的值为true执行代码
   if(布尔表达式 2){
      如果布尔表达式 2的值为true执行代码
   }
}
public class ice {
    public static void main(String[] args) {
       int x=1;
       if(x==1) //成立
       {
           x++;
           if(x==2) //成立
           {
               System.out.println(x);
           }
       }
    }
}

在这里插入图片描述

switch 语句

switch 语句用于根据表达式的值选择性地执行代码块。它是一种更灵活的条件语句,适用于需要测试多个可能值的情况。

switch (expression) {
    case value1:
        // 当表达式的值等于 value1 时执行的代码块
        break;
    case value2:
        // 当表达式的值等于 value2 时执行的代码块
        break;
    // 可以有更多的 case 语句
    default:
        // 当表达式的值不匹配任何 case 时执行的代码块
}

switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型。

int变量类型实例:

import java.util.Scanner;
public class ice {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int x = scanner.nextInt(); // 从键盘获取整数值赋给变量 x
        switch (x){
            case 1:
                System.out.println(1+'!');
                break;
            case 2:
                System.out.println(2+'!');
                break;
            case 3:
                System.out.println(3+'!');
                break;
            default:
                System.out.println("Null");
        }
        scanner.close();
    }
}

在这里插入图片描述

char变量类型实例:

public class ice {
    public static void main(String args[]){
        char grade = 'A';
        switch(grade)
        {
            case 'A' :
                System.out.println("好");
                break;
            case 'B' :
            case 'C' :
                System.out.println("好好");
                break;
                //若grade为B或C,均输出“好好”
            case 'D' :
                System.out.println("好好好");
                break;
            case 'F' :
                System.out.println("好好好好");
                break;
            default :
                System.out.println("好好好好好");
        }
    }
}

在这里插入图片描述

同时我们也可以在switch中灵活运用break:

import java.util.Scanner;
public class ice {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int x = scanner.nextInt(); // 从键盘获取整数值赋给变量 x
        switch (x){
            case 1:
                System.out.println(1+"!");
                break;
            case 2:
                System.out.println(2+"!");
            case 3:
                System.out.println(3+"!");
                break;
            default:
                System.out.println("Null");
        }
        scanner.close();
    }
}

在这里插入图片描述

当我们输入2时,进入case 2模块,但该模块没有break,导致输出2!后仍进入case 3模块,进而输出3!,接着跳出循环。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/554993.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

中拔出溜的公司如何实施DEVOPS

虽然推进起来很艰难,但在这类公司也并非一无是处:只要让各方尤其是领导曾看到了成效,大范围铺开很容易,你也非常容易因此变得出众。 0. 标题 1. 中拔出溜公司的特点2. 循序渐进2.1 从研发团队开始2.2 先CI(持续集成&am…

vim使用指南:指令、配置、插件、异常

文章目录 vi / vim命令模式插入模式光标定位复制粘贴删除撤销替换删除查找 底行模式保存退出行号查找多开其他 视图模式注释 异常vim配置vim插件 vi / vim vim的本质是一个编辑器,是一种多模式的编辑器,只能进行读写操作,不能进行编译编辑器…

前端JS必用工具【js-tool-big-box】,时间日期转换学习一

这一小节,我们学习一下 js-tool-big-box 这个npm 前端工具库,关于时间日期格式转换的一部分,后续还会有。 目录 1 安装 2 项目中引入 3 工具使用 3.1 年月日时分秒的单独处理 3.2 以上方法中第一个参数 3.3 日期时间的转换 3.4 更个…

Ollama、FastGPT大模型RAG知识库结合使用案例

参考: https://ollama.com/download/linux https://doc.fastai.site/docs/intro/ https://blog.csdn.net/m0_71142057/article/details/136738997 https://doc.fastgpt.run/docs/development/custom-models/m3e/ https://concise-eater-d47.notion.site/Ollama-Fastgpt-b170…

编程入门(四)【计算机网络基础(由一根网线连接两个电脑开始)】

读者大大们好呀!!!☀️☀️☀️ 🔥 欢迎来到我的博客 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️寻至善的主页 文章目录 前言两个电脑如何互连呢?集线器、交换机与路由器总结 前言 当你有…

基于SpringBoot的“外卖点餐系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“外卖点餐系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能图 用户功能界面 订单管理界面 配送单管…

Java 笔记 01:Java 概述,MarkDown 常用语法整理

一、前言 记录时间 [2024-04-18] 昨天整理完 Docker 基础后略微思索了一下,还是决定把 Java 捡起来,系统地学习一遍,参考的学习课程是狂神说 Java 零基础,真诚感激此系列视频对笔者的帮助。 零基础可以学 Java 吗?只要…

【创建型模式】建造者模式

一、建造者模式概述 建造者模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同得表示。(对象创建型模式)。 建造者模式分析: 1.将客户端与包含多个部件得复杂对象得创建过程分离,客户端无需知道复杂对象…

vue快速入门(二十九)echarts在vue中的使用

注释很详细&#xff0c;直接上代码 上一篇 新增内容 echarts.js的下载途径echarts的饼图示范 echarts.js&#xff0c;点击跳转&#xff0c;右键另存即可 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><m…

BEV| lift-splat-shoot 运行配置

Lift, splat, shoot: Encoding images from arbitrary camera rigs by implicitly unprojecting to 3d

6.C++:继承

一、继承 //1.类中的保护和私有在当前类中没有差别&#xff1b; //2.在继承后的子类中有差别&#xff0c;private在子类中不可见&#xff0c;所以用protected&#xff1b; class person { public:void print(){cout << "name:" << _name << endl;c…

《乱弹篇(29)崇州寻兰》

几天前天气骤然暴热&#xff0c;致使本老龄笔者血氧饱和度急剧下降至89&#xff0c;心率加速高达110至120&#xff0c;晚上盖床夏被也觉浑身燥热&#xff0c;很不舒服&#xff0c;彻夜难眠&#xff0c;便有一种“快走了”的不祥预感袭上心头。其实&#xff0c;我真的祈盼能心肌…

计算机视觉——基于OpenCV和Python进行模板匹配

模板匹配&#xff1f; 模板匹配是它允许在一幅较大的图像中寻找是否存在一个较小的、预定义的模板图像。这项技术的应用非常广泛&#xff0c;包括但不限于图像识别、目标跟踪和场景理解等。 目标和原理 模板匹配的主要目标是在一幅大图像中定位一个或多个与模板图像相匹配的…

隧道中心线提取

作者&#xff1a;迅卓科技 简介&#xff1a;本人从事过多项点云项目&#xff0c;并且负责的项目均已得到好评&#xff01; 公众号&#xff1a;迅卓科技&#xff0c;一个可以让您可以学习点云的好地方 重点&#xff1a;每个模块都有参数如何调试的讲解&#xff0c;即调试某个参数…

HackMyVM-BaseME

目录 信息收集 arp nmap WEB web信息收集 gobuster hydra 目录检索 ssh 提权 get user sudo base64提权 get root 信息收集 arp ┌─[rootparrot]─[~/HackMyVM] └──╼ #arp-scan -l Interface: enp0s3, type: EN10MB, MAC: 08:00:27:16:3d:f8, IPv4: 192.168…

​波士顿动力发布全新人形机器人:Atlas

4月16日&#xff0c;波士顿动力&#xff08;Boston Dynamics&#xff09;发布了《再见&#xff0c;液压Atlas》视频&#xff0c;正式宣告其研发的液压驱动双足人形机器人Atlas退役。 在视频的结尾&#xff0c;Atlas深深鞠躬&#xff0c;之后还有一句话“直到我们再次相遇&…

ChatGPT及GIS、生物、地球、农业、气象、生态、环境科学领域案例

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

Count the Values of k

目录 题目总览 思路 参考代码 原题链接&#xff1a; CF1933C Turtle Fingers: Count the Values of k 题目总览 # Turtle Fingers: Count the Values of k ## 题面翻译 给你三个**正**整数 $a$ 、 $b$ 和 $l$ ( $a,b,l>0$ )。 可以证明&#xff0c;总有一种方法可以选择*…

如何用ChatGPT进行论文撰写?

原文链接&#xff1a;如何用ChatGPT进行论文撰写&#xff1f;https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247601619&idx1&snb686fbe87dedfac2df3a6afe780b2ffe&chksmfa820c34cdf5852251dca64597024ea62ddbde280086535ec251f4b62b848d9f9234688384e6…

【论文速读】| 大语言模型是边缘情况模糊测试器:通过FuzzGPT测试深度学习库

本次分享论文为&#xff1a;Large Language Models are Edge-Case Fuzzers: Testing Deep Learning Libraries via FuzzGPT 基本信息 原文作者&#xff1a;Yinlin Deng, Chunqiu Steven Xia, Chenyuan Yang, Shizhuo Dylan Zhang, Shujing Yang, Lingming Zhang 作者单位&…