Java 条件和If语句

Java支持数学中常见的逻辑条件:

  • 小于: a < b
  • 小于等于: a <= b
  • 大于: a > b
  • 大于等于: a >= b
  • 等于: a == b
  • 不等于: a != b

可以使用这些条件做判断,然后执行不同的代码。

Java有以下条件语句:

  • if 如果条件为真,if中的代码块将被执行
  • else 如果if语句中的条件为假,else中的代码块将被执行
  • else if 如果第一个条件不成立,则指定一个新条件
  • switch 指定多个条件,匹配条件下的代码块将被执行

if语句

使用if语句,指定当条件为真时,要执行的代码块。

语法

if (条件) {
// 条件为真时,要执行的代码块
}

注意if是小写字母。大写字母(If或IF)将产生错误。

在下面的例子中,我们测试两个值,看看20是否大于18。如果条件为真,打印一些文本:

示例

if (20 > 18) {
System.out.println("20 大于 18");
}

我们也可以测试变量:

示例

int x = 20;
int y = 18;
if (x > y) {
System.out.println("x 大于 y");
}

在上面的例子中,我们使用两个变量x和y,来测试x是否大于y(使用>运算符)。当x = 20,y = 18,我们知道20大于18,屏幕上将打印“x大于y”。

else语句

使用else语句,指定如果条件为假时,要执行的代码块。

语法

if (条件) {
// 条件为真时,要执行的代码块
} else {
// 条件为假时,要执行的代码块
}

示例

int time = 20;
if (time < 18) {
System.out.println("白天");
} else {
System.out.println("夜晚");
}
// 输出 "夜晚"

在上面的例子中,time(20)大于18,所以条件为假,程序将执行else语句,在屏幕上打印“夜晚”。如果时间小于18,程序将打印“白天”。

else if语句

使用else if语句,当第一个条件为假时,指定一个新条件。

语法

if (条件1) {
// 条件1为真时,要执行的代码块
} else if (条件2) {
// 条件1为假,条件2为真时,要执行的代码块
} else {
// 条件1为假,条件2为假时,要执行的代码块
}

示例

int time = 22;
if (time < 6) {
System.out.println("夜晚");
} else if (time < 18) {
System.out.println("白天");
} else {
System.out.println("夜晚");
}
// 输出 "夜晚"

在上面的例子中,time(22)大于6,所以第一个条件为假,接下来else if语句中的条件也为假,程序会继续执行,到达else代码块,屏幕上将打印“夜晚”。

如果time = 14,程序会打印“白天”。

if...else 精简格式(三元运算符)

如果if与else代码块中都只有一个语句要执行,可以把它们放在同一行:

语法

variable = (条件) ? 条件真时执行的语句 : 条件假时执行的语句;

更换下面的写法

示例

int time = 20;
if (time < 18) {
System.out.println("白天");
} else {
System.out.println("夜晚");
}

可以简单地写为:

示例

int time = 20;
String result = (time < 18) ? "白天" : "夜晚";
System.out.println(result);

Java If ... Else的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

  10. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

随机推荐

  1. http的3次握手与4次挥手

    Http的3次握手: 第一次握手:客户端发送一个带SYN的TCP报文到服务器,表示客户端想要和服务器端建立连接. 第二次握手:服务器端接收到客户端的请求,返回客户端报文,这个报文带有SYN和ACK确认 ...

  2. Atcoder Grand Contest 037C(贪心,优先队列,思维)

    #define HAVE_STRUCT_TIMESPEC//编译器中time.h和phread.h头文件中timespec结构体重名,故加此行#include<bits/stdc++.h> ...

  3. android传递数据bundle封装传递map对象

    android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法: 第一步:封装自己的map,实现序列化即可 ? 1 2 3 4 5 ...

  4. Linux centosVMware Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做

    一.Linux监控平台介绍 cacti.nagios.zabbix.smokeping.open-falcon等等 cacti.smokeping偏向于基础监控,成图非常漂亮 cacti.nagios ...

  5. 实现JSP部分内容继承

    我们的网站框架搭好以后,只需要主体部分显示不同的数据. 如果每次代码重写都会造成冗余. 今天欣赏别人代码,学到了 maven 核心代码 <dependency> <groupId&g ...

  6. [经验] Linux 怎么连接 Xshell?

    (1) 首先, 你要先有一个可以正常运行的 Linux 系统, 当然一般情况下我们是把这个系统放在虚拟机里的, 我所使用的是 ubuntu-18.04.2-live-server-amd64.iso ...

  7. js中各种类型转换为Boolean类型

    数据类型  转换为true的值  转换为false的值 Boolean  true  false String  任何非空字符串  空字符串 Number  任何非零数字值(包括无穷大) 0和null ...

  8. Qt 调用本地浏览器打开URL

    点击Qt某些控件,查找本地浏览器打开前端传递的URL. 方法一:直接写死本地浏览器地址 QString programAdress = "C:\Program Files (x86)\Goo ...

  9. 学习:Android框架

      引言 通过前面两篇: Android 开发之旅:环境搭建及HelloWorld Android 开发之旅:HelloWorld项目的目录结构 我 们对android有了个大致的了解,知道如何搭建a ...

  10. Xcode下载途径

    Xcode除了能在Appstore直接下载外,还可以用开发者账号登陆开发者中心[https://developer.apple.com/download/]下载对应的资源. 在开发者中心下载的好处是, ...