Java基础学习(6)

简介: 关系运算符等

一、关系运算符

(1)关系运算符介绍

1)关系运算符算出的结果都是 Boolean 类型,要么是true,要么是false。

2)关系表达式经常用在if结构的条件中或者循环结构的条件中。

(2)关系运算符分类

关系运算符 运算方式 演示 结果
== 相等于 5 == 3 false
!= 不等于 5 != 3 true
< 小于 5 < 3 false
> 大于 5 > 3 true
<= 小于等于 5 <= 3 false
>= 大于等于 5 >= 3 true

(3)关系运算符细节

1)关系运算符组成的表达式称为关系表达式。

2)"=="不要写成"="。

3)运算结果都是布尔类型的值。


一、逻辑运算符

(1)逻辑运算符介绍

       逻辑运算符是用于连接多个条件,也就是连接多个关系表达式的符号,最终的结果也是一个布尔类型值。

(2)逻辑运算符分类

1)短路与 && , 短路或 || , 取反 !

2)逻辑与 & ,逻辑或 | , 逻辑异或 ^

a b a & b a && b a | b a || b ! a a ^ b
true true true true true true false false
false true false false true true true true
true false false false true true false true
false false false false false false true false

(3)逻辑运算符运算规则

1)逻辑与(&):当 a 和 b 同时为 true 时,结果为 true , 否则为 false

2)短路与(&&):当 a 和 b 同时为 true 时,结果为 true , 否则为 false

3)逻辑或(|):当 a 和 b 有一个为 true 时,结果为 true , 否则为 false

4)短路或(||):当 a 和 b 有一个为 true 时,结果为 true , 否则为 false

5)取反(!):当 a 为 true 时,结果为 false , 当 a 为 false 时,结果为 true

6)逻辑异或(^):当 a 和 b 不同时,结果为 true , 否则为 false

(4)逻辑与短路的区别

1)对于短路与来说,如果第一个条件为 false,则后面的条件不会在判断 ,结果为 false

    对于逻辑与来说,如果第一个条件为 false ,则后面的条件也会继续判断 ,结果为 false

2)对于短路或来说,如果第一个条件为 true ,则后面的条件不会在判断,结果为 true

     对于逻辑或来说,如果第一个条件为 true ,则后面的条件也会继续判断,结果为true

(5)演示

publicclassOperator {
publicstaticvoidmain(String[] args) {
inti=50;
if(i>0&&i<100) { 
System.out.println("a");// 正确执行,错误不执行        }
if(i>0&&i<10) { 
System.out.println("b");// 正确执行,错误不执行        }
if(i>0||i<100) { 
System.out.println("c");// 正确执行,错误不执行        }
if(i>0||i<10) { 
System.out.println("d");// 正确执行,错误不执行        }
    }
}

(6)逻辑异或

当两个条件表达式的值不同时 结果为true ,当两个条件表达式的值相同时 结果为false。

if((5<10)^ (10>100)) {
System.out.print("正确");
    } else {
System.out.print("错误");
    }

image.gif

最终的输出结果为:正确

相关文章
|
28天前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
64 3
|
13天前
|
XML Java 编译器
Java学习十六—掌握注解:让编程更简单
Java 注解(Annotation)是一种特殊的语法结构,可以在代码中嵌入元数据。它们不直接影响代码的运行,但可以通过工具和框架提供额外的信息,帮助在编译、部署或运行时进行处理。
82 43
Java学习十六—掌握注解:让编程更简单
|
21天前
|
存储 SQL 小程序
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
这篇文章详细介绍了Java虚拟机(JVM)的运行时数据区域和JVM指令集,包括程序计数器、虚拟机栈、本地方法栈、直接内存、方法区和堆,以及栈帧的组成部分和执行流程。
24 2
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
|
23天前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
57 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
6天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
21天前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
33 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
24天前
|
前端开发 Java 应用服务中间件
Javaweb学习
【10月更文挑战第1天】Javaweb学习
29 2
|
26天前
|
存储 安全 Java
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
21 3
|
26天前
|
存储 安全 Java
【用Java学习数据结构系列】探索栈和队列的无尽秘密
【用Java学习数据结构系列】探索栈和队列的无尽秘密
28 2
|
26天前
|
存储 Java 编译器
【用Java学习数据结构系列】初识泛型
【用Java学习数据结构系列】初识泛型
18 2