当前位置: 首页 > news >正文

【JavaSE专栏11】Java的 if 条件语句

作者主页:Designer 小郑
作者简介:Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue、SpringBoot和微信小程序)、系统定制、远程技术指导。CSDN学院、蓝桥云课认证讲师,全栈领域优质创作者。热爱技术、专注业务、开放合作、乐于分享,期待你我共同成长!
主打方向:Vue、SpringBoot、微信小程序

if 语句是 Java 选择结构中的一类,也是最常用的一类,本文将对 Java 中的 if 语句进行讲解。

目录

    • 一、为什么要用 if 语句
    • 一、基础 if 语句
    • 二、if - else 语句
    • 三、if - else if - else 语句
    • 四、if 语句的 “危害”
    • 五、课时小结


一、为什么要用 if 语句

在上一篇讲到了最基本的顺序结构,顺序结构是程序中最简单、最基本的流程控制,按照代码的先后顺序,依次执行。

但有时代码块需要根据指定的条件来执行,比如:

今天如果要下雨,就需要带伞。
我如果没钱了,就需要去赚钱。

在 Java 中也是这样,只是说 if 语句 能够较简易的表达这个 如果 条件。

在这里插入图片描述

一、基础 if 语句

基本语法如下:

if (关系表达式) {语句体;
}

样例如下:

import java.util.Objects;public class Main {public static void main(String[] args) {/*** 今天如果要下雨,就需要带伞*/String weather = "下雨";if(Objects.equals("下雨",weather)) {System.out.println("需要带伞");}}
}

考试/面试注意点

如果 if 语句的关系表达式中有多个条件,用 ANDOR 链接时,若前者条件已让表达式为假,则后面的表达式不执行

如果 if 语句的语句体只有一行代码,则大括号可以省略。但从规范性角度来讲,还是建议加上。

在这里插入图片描述


二、if - else 语句

基本语法如下:

if (关系表达式) {语句体1;
} else {语句体2;
}

样例如下:

import java.util.Objects;public class Main {public static void main(String[] args) {/*** 今天如果要下雨,就需要带伞*/String weather = "下雨";if(Objects.equals("下雨",weather)) {System.out.println("需要带伞");} else {System.out.println("不用带伞");}}
}

首先计算关系表达式的值,如果为真执行语句体 1,否则执行语句体 2

在这里插入图片描述


三、if - else if - else 语句

基本语法如下:

//格式:
if (关系表达式 1) {语句体1;
} else if (关系表达式 2){语句体2;
}
...
else {语句体n+1;
}

样例如下:

import java.util.Objects;public class Main {public static void main(String[] args) {/*** 今天如果要下雨,就需要带伞*/String weather = "下雨";if(Objects.equals("下雨",weather)) {System.out.println("需要带伞");} else if(Objects.equals("阴天",weather)){System.out.println("我再想想");} else {System.out.println("不用带伞");}}
}

首先计算关系表达式的值,如果为真执行语句体 1,否则继续判断关系表达式 2,以此类推。


四、if 语句的 “危害”

适当 if 语句,可以快速实现条件判断。

但对于复杂性较高的条件判断,可以使用其他语法来实现。

过多的 if - else 语句会让代码过于臃肿,造成无法阅读理解的情况出现。

我们可以使用枚举、多态等方式来优化,将在下面的课时中详细讲解。


五、课时小结

在本课时中,首先讲解了 Java 的选择结构的 if 语句,接着演示了 if、if - else、if - else if - else 语句的具体应用。在下一节课时中,将讲解 Java 的 switch 语句的语法。

在这里插入图片描述

http://www.lryc.cn/news/38471.html

相关文章:

  • 【opensea】opensea-js 升级 Seaport v1.4 导致的问题及解决笔记
  • JS语法(扫盲)
  • 归并排序的学习过程(代码实现)
  • add_header重写的坑
  • 跑步耳机入耳好还是不入耳好,最适合运动的蓝牙耳机
  • 深度学习知识点简单概述【更新中】
  • 【编程基础】009.输入两个正整数m和n,求其最大公约数和最小公倍数。
  • Golang错误处理
  • English Learning - L2 语音作业打卡 复习对比 [ɑ:] [æ] Day18 2023.3.10 周五
  • LabVIEW中以编程方式获取VI克隆名称
  • Mysql count(*)的使用原理以及InnoDb的优化策略
  • 一文入门HTML+CSS+JS(样例后续更新)
  • 【STL】Vector剖析及模拟实现
  • 数据库建表的一些技巧
  • 线程(一)
  • [深入理解SSD系列 闪存实战2.1.8] NAND FLASH Multi Plane Program(写)操作_multi plane 为何能提高闪存速度
  • 计算机网络(第八版)——第一章知识总结
  • Linux学习笔记
  • 树与二叉树(概念篇)
  • C++回顾(二十五)—— map/multimap容器
  • 7.3 向量的数量积与向量积
  • Qt静态扫描(命令行操作)
  • 【Hadoop】配置文件
  • python进程池
  • 笔记本固态盘数据丢失怎么办?笔记本固态盘怎么恢复数据
  • 堆的结构与实现
  • Pandas快速入门
  • LVGL学习笔记18 - 表Table
  • 嵌入式安防监控项目——html框架分析和环境信息刷新到网页
  • centos安装docker详细步骤