运算符:比较运算符

运算符

运算

范例

结果

==

相等于

4==3

false

!=

不等于

4!=3

true

<

小于

4<3

false

>

大于

4>3

true

<=

小于等于

4<=3

false

>=

大于等于

4>=3

true

instanceof

检查是否是类的对象

"Hello" instanceof String

true

比较运算符的结果都是 boolean 类型,要么是 true 要么是 false。

比较运算符 "==" 不能误写成 "="

class CompareTest{

public static void main(String[] args){

int i = 10;

int j = 20;

System.out.println(i==j); //false

System.out.println(i=j); //20

boolean b1 = true;

boolean b2 = false;

System.out.println(b2==b1); //false

System.out.println(b2=b1); //true

}

}

运算符:逻辑运算符

&: 逻辑与

&&:短路与

|: 逻辑或

||:短路或

! :逻辑非

^ : 逻辑异或

a

b

a&b

a&&b

a|b

a||b

!a

a^b

true

true

true

true

true

true

false

false

true

false

false

false

true

true

false

true

false

true

false

false

true

true

true

true

false

false

false

false

false

false

true

false

class LogicTest{

public static void main(String[] args){

// 区分 & 与 &&

// 相同点1:当 & 与 && 的运算结果相同

// 相同点2:当符号左边是true时,二者都会执行符号右边的运算

// 不同点: 当符号左边是false时,& 继续执行符号右边的运算,&&不再执行符号右边的运算。

boolean b1 = true;

int num1 = 10;

if (b1 & (num1++ > 0)){

System.out.println("Hello, beijing"); //Hello, beijing

} else {

System.out.println("Hello, nanjing");

}

System.out.println("num1 = " + num1); //11

boolean b2 = false;

int num2 = 10;

if (b2 && (num2++ > 0)){

System.out.println("Hello, beijing"); //Hello, beijing

} else {

System.out.println("Hello, nanjing");

}

System.out.println("num2 = " + num2); //10

// 区分 | 与 ||

// 相同点1: | 与 || 的运算结果相同

// 相同点2: 当符号左边是false时,两者都执行符号右边的运算

// 不同点: 当符号左边是tue时,| 继续执行符号右边的运算,||不再执行符号右边的运算。

boolean b3 = true;

int num3 = 10;

if (b3 | (num3++ > 0)){

System.out.println("Hello, beijing"); //Hello, beijing

} else {

System.out.println("Hello, nanjing");

}

System.out.println("num3 = " + num3); //11

boolean b4 = true;

int num4 = 10;

if (b4 || (num4++ > 0)){

System.out.println("Hello, beijing"); //Hello, beijing

} else {

System.out.println("Hello, nanjing");

}

System.out.println("num4 = " + num4); //10

}

}

运算符:三元运算符

一: 格式:(条件表达式)?表达式1:表达式2

1.条件表达式为 true ,运算后的结果是表达式1

2.条件表达式为 false ,运算后的结果是表达式2

二: 表达式1和表达式2位同种类型

三: 三元运算符与if-else的联系与区别:

1.三元运算符可简化为 if-else 语句

2.三元运算符要求必须返回一个结果

3.if后的代码块可有多个语句

4.如果程序可以使用三元运算符,又可以使用if-else结构,那么优先选择三元运算符。原因:简单,执行效率高。

class SanYuanTest {

public static void main(String[] args){

//获取两个整数的较大值

int m = 12;

int n = 5;

int max = (m > n)?m : n;

System.out.println(max); //12

double num = (m > n)? 2 : 1.0;

System.out.println(num); //2.0

n = 12;

String maxStr = (m > n)? "m大" : ((m == n)? "m 和 n 相等" : "n大");

System.out.println(maxStr); //m 和 n 相等

//获取三个数的最大值

int n1 = 12;

int n2 = 30;

int n3 = -43;

int max1 = (n1 > n2)? n1 : n2;

int max2 = (max1 > n3)? max1 : n3;

System.out.println("三个数中的最大值为: " + max2); //三个数中的最大值为: 30

// 不建议

int max3 = (((n1 > n2)? n1 : n2) > n3)? ((n1 > n2)? n1 : n2) : n3;

System.out.println("三个数中的最大值为: " + max3); //三个数中的最大值为: 30

// 改写成 if-else

if(m > n){

System.out.println("m=" + m);

}else{

System.out.println("n=" + n); //n=12

}

}

}

java的比较运算符是_Java 基础(比较运算符,逻辑运算符,三元运算符)相关推荐

  1. java异或什么意思_java基础知识,数据类型,运算符(003)

    一.java注释. 单行注释与取消快捷键:shift+ctrl+c或则ctrl+/. 多行注释:shift+ctrl+/,多行注释取消shift+ctrl+. 文档注释: 以"/**&quo ...

  2. java商场购物幸运客户练习题_JAVA基础语法练习(一)

    一.基础案例 1.训练案例1 1.1.训练描述 键盘录入一个int类型的数据,使用三元运算符判断这个数是奇数还是偶数 import java.util.Scanner; public class X2 ...

  3. php三元运算符要多个赋值,php让三元运算符用起来更简单的小技巧

    今天我发现了PHP三元运算符的一个小小的用法. 这给我干涸的大脑一点乐趣! PHP 三元运算符是对参数赋值时候的一个简洁的主要用法. 一个主要的用法: PHP 三元运算符能够让你在一行代码中描述判定代 ...

  4. c语言三元运算符_了解C / C ++中的三元运算符

    c语言三元运算符 In this article, we'll take a look at understanding the ternary operator in C / C++. 在本文中,我 ...

  5. php三元运算符要多个赋值,php中三元运算符用法

    php中三元运算符用法如何算呢?就跟随百分网小编一起去了解下吧,想了解更多相关信息请持续关注我们应届毕业生考试网! 语法:条件 ? 结果1 : 结果2 说明:问号前面的位置是判断的条件,如果满足条件时 ...

  6. linux shell 三元运算符,关于语法:Bash中的三元运算符(?:)

    有什么办法可以做这种事吗 int a = (b == 5) ? c : d; 使用BASH? @荷兰语的答案表明,bash确实有类似于"三元运算符"的东西,但是在bash中,这被称 ...

  7. java基本数据类型的标识符_java基础(一)-标识符、变量、基本数据类型及转换、运算符及表达式...

    一.标识符 二.关键字 三.JAVA基础数据类型 3.1.常量 3.2.变量 从本质上来讲,变量其实是内存里面的一小块区域,一个程序在运行的时候,实际上这个程序是位于内存里面,然后才开始运行.一个.e ...

  8. java保护型数据成员_Java基础知识笔记第四章:类和对象

    编程语言的几个发展阶段 面向机器语言 面向过程语言 面向对象语言:封装.继承.多态 类 类声明 classPerson{ ....... }class植物{ ....... } 类体 类使用类体来描述 ...

  9. java增强型for报错_Java基础——增强for循环

    java1.5版本引入了一个增强for循环,基本原理和for循环类似. 语法声明:for(表达式:条件表达式) 举例:for (String str : set) 解释:set代表set集合,str代 ...

最新文章

  1. Oracle 内存参数设置
  2. 跟公务员稍稍的接触了下
  3. 发现还是 True Image Server v8.1.941 比较好用
  4. SAP License:关于SAP 对生产订单的月度结算
  5. 执行 npm install -g @vue/cli 报错
  6. 微信公众号开发 包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证 2017.12.2...
  7. 安防摄像头WEB端直播,实现按需播放,节省带宽和服务器压力
  8. python爬虫--requests模块
  9. 一个APP从启动到主页面显示经历了哪些过程?跳槽薪资翻倍
  10. STM32串口通信 中断配置
  11. Hibernate必须掌握的知识
  12. 一个真实的用户画像实例。
  13. 企业网站制作中CMS系统的作用及现状
  14. mysql消息已读未读_Redis实现信息已读未读状态提示
  15. 服务网格——后 Kubernetes 时代的微服务(前言)
  16. Filament加载并渲染glTF模型
  17. CG共轭梯度下降法【学习笔记、例题与代码】
  18. 各国时区夏令时切换信息
  19. 微信登陆无法拉起授权界面
  20. EasyNVR网页摄像机直播方案H5前端构建之:区分页面是自跳转还是分享依据

热门文章

  1. 逻辑回归 - sklearn (LR、LRCV、MLP、RLR)- Python代码实现
  2. Power BI 如何获取数据做可视化
  3. 制作多系统启动盘教程_制作U盘启动盘教程
  4. 史上最大多模态图文数据集发布!
  5. 谁说发 paper 一定要追快打新?2021年,研究 word2vec 也能中顶会!
  6. 强化学习在美团“猜你喜欢”的实践
  7. 程序员真的只能干到35岁?——我的35岁危机度过之道!
  8. DSSM、CNN-DSSM、LSTM-DSSM等深度学习模型在计算语义相似度上的应用+距离运算
  9. 笔记:seafile 7.x 安装和部署摘要
  10. 总结Vue中index.html、main.js、App.vue、index.js之间关系以及Vue项目加载流程