004-Java中的运算符
@
一、运算符
一、分类

二、算数运算符
- 加 $+$
- 减 $-$
- 乘 $*$
- 商 /
- 取余数 %
- 自加1 ++
- 自减1 - -
关于 ++ 和 - -(用 ++ 举例,- - 的用法和++一样)
1、位置:
- 可以出现在变量前和变量后,如:a++ 、++a 都是可以的,不管出现在前后,执行结束后变量都会加一;
2、++ 出现在前后的区别:
- 当 ++ 在变量前时,先进行自加1的运算,然后再赋值;
- 当 ++ 在变量后时,先赋值,然后在进行自加1的运算;
三、关系运算符
1.大于 >
2. 大于等于 > =
3. 小于 <
4. 小于等于 < =
5. 等等于 = =
6. 不等于 ! =
注:所有的关系运算符运算结果都是布尔值,不是true就是false,不可能是其他的值
四、逻辑运算符
- 逻辑与(并) &
- 逻辑或(且) |
- 逻辑非(取反) $!$
- 短路与 & &
- 短路或 ||
- & 与 && 的区别
对于逻辑与 & 来说,只要一边是false,结果就是false,只有两边为true,结果才为true,不管什么情况,左右两边式子都会执行;
对于短路与 && 来说,只要一边是false,结果就是false,只有两边为true,结果才为true,如果左边式子为false时,出现短路现像,右边式子不执行; - | 与 || 的区别
对于逻辑或 | 来说,只要一边是true,结果就是true,只有两边为false,结果才为false,不管什么情况,左右两边式子都会执行;
对于逻辑或 || 来说,只要一边是true,结果就是true,只有两边为false,结果才为false,如果左边式子为true时,出现短路现像,右边式子不执行;
五、赋值运算符
- 基本赋值运算符:=
- 扩展的赋值运算符:+=、-=、*=、/=、%=
下面我们用 += 运算符作为代表,了解扩展赋值运算符:
- x += 100 和 x = x + 100 真的是完全一样吗?
重要结论:使用扩展运算符时,永远都不会改变运算结果类型;
eg:byte x = 100;
x += 1;
因为 x += 1实际上会转换为 x = (byte)(x+1)的形式,因此自诞生以来 x 都是byte类型,x变量的类型永远都是byte。不会变,不管后面是多大的数字;
然而,如果是以下定义,代码是无法通过编译的:
eg:byte x = 100;
x = x + 1;
因为编译器会检测到 x + 1 是 int 类型,然而 int 类型是不能赋给 byte 类型的,因此会报:不兼容的类型: 从int转换到byte可能会有损失错误;
六、条件运算符(三目运算符)
- 布尔表达式 ? 表达式1 :表达式2
原理:布尔表达式的结果为true时,表达式1的执行结果作为整个表达式的结果;
布尔表达式的结果为false时,表达式2的执行结果作为整个表达式的结果。
七、+运算符
- $+$ 运算符在java语言中有两个作用。
作用1:求和:当 + 运算符两边都是数字类型的时候,求和;
作用2:字符串拼接:当 + 运算符两边的“任意一边”是字符串类型,那么这个+会进行字符串拼接操作(字符串拼接完之后的结果还是一个字符串);
相关链接:
链接: 003-Java中的变量和数据类型.
链接: 002-Java的标识符和关键字.
链接: 001-Java学习前基础.
004-Java中的运算符的更多相关文章
- 【JAVA零基础入门系列】Day5 Java中的运算符
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rec ...
- Java 中的运算符和流程控制
Java 中的运算符和流程控制 + 面试题 算术运算符 Java 中的算术运算符,包括以下几种: **算术运算符** **名称** **举例** + 加法 1+2=3 - 减法 2-1=1 \* 乘法 ...
- Java中移位操作运算符的理解
java中的移位运算符有三种: 1. <<: 左移 2. >>: 右移 3. >>>: 无符号右移 使用方法:左移就是将左边的操作数在内存中的二进制数据左移指 ...
- JAVA_SE基础——11.Java中的运算符
在程序设计中,运算符应用得十分广泛,通过运算符可以将两个变量进行任意运算.数学中的"+"."-"."*"."/"运算符同 ...
- Java中位运算符的使用
先预知识: 数据在计算机中是以二进制的形式进行存储的,而二进制在内存中是以补码的形式进行存储的.在介绍位运算之前,首先来看一下原码.反码和补码的概念.由于正数的原码.反码和补码的形式都是一样的,所以以 ...
- Java中的运算符及表达式
常用的运算符:赋值运算符(=).加法运算符(+).乘法运算符(*).除法运算符(/).括号运算符(( )).余数运算符(%).布尔运算符. 注释符(//).注释的内容为双反斜杠后的内容至换行结束. j ...
- Java 中位移运算符 >>,>>>,<<
Java 中的三种位移运算符 java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : ...
- Java中逗号运算符的使用
今天看到一道面试题,题目如下: 题目解释: 上面有一个类,有四个成员属性,以及两个构造方法(一个四个参数,一个两个参数),题目给出四个选项,问哪些选项可以满足在在四个参数的构造方法中完成x=a,y=b ...
- 004 java中的变量
这篇文章为你搞懂三个问题 什么是变量? 如何使用变量? 变量命名有哪些规范? 变量 计算机的内存类似于人的大脑,电脑使用内存来存储计算所需要的数据. 内存像旅馆一样,不同的房间类型对应不同的数据类型, ...
- java 中的运算符
Java的运算符,分为四类: 算数运算符.关系运算符.逻辑运算符.位运算符. 算数运算符():+ - * / % ++ -- 关系运算符():== != > >= < <= 逻 ...
随机推荐
- matlab load函数用法 实例
一 语法: load(filename) load(filename,variables) load(filename,'-ascii') load(filename,'-mat') load(fil ...
- 学习一下 SpringCloud (五)-- 配置中心 Config、消息总线 Bus、链路追踪 Sleuth、配置中心 Nacos
(1) 相关博文地址: 学习一下 SpringCloud (一)-- 从单体架构到微服务架构.代码拆分(maven 聚合): https://www.cnblogs.com/l-y-h/p/14105 ...
- 解决QQ能正常上网但是网页无法打开的办法
最近网页老师稀里糊涂的打不开,在这里附上参考的行之有效的办法. https://baijiahao.baidu.com/s?id=1645363213803553998&wfr=spider& ...
- java实现下载器(以及创建一个URL对象)
java实现下载器(以及创建一个URL对象) 1.思路讲解: (1)注意路径:是网络路径噢 (2)创建创建网路协议对象(远程对象):HttpURLConnection urlConnection (3 ...
- 前端学习 node 快速入门 系列 —— 服务端渲染
其他章节请看: 前端学习 node 快速入门 系列 服务端渲染 在简易版 Apache一文中,我们用 node 做了一个简单的服务器,能提供静态资源访问的能力. 对于真正的网站,页面中的数据应该来自服 ...
- 数位dp 模板加例题
概念:所谓数位"dp",是指对数字的"位"进行的与计数有关的DP.一个数一个位,十位,百位,千位等,数的每一位就是数位.数位DP用来解决与数字操作有关的问题.例 ...
- ABP 适用性改造 - 精简 ABP CLI 生成的项目结构
Overview 不管是公司或者个人都会有不同的开发习惯,通过建立项目模板,既可以使开发人员聚焦于业务功能的开发,也可以在一定程度上统一不同开发人员之间的开发风格.在使用 ABP 框架的过程中,对于 ...
- 剑指 Offer 03. 数组中重复的数字
剑指 Offer 03. 数组中重复的数字 找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知 ...
- 【数据库】Redis(2)--Redis的常用数据类型及命令
1.Redis主要数据类型分类 Redis中存储数据常用的数据类型主要有五种:String.List.Set.Sorted Set.Hash,这五种数据结构在Redis中存储数据的命令掌握对于我们后期 ...
- vue+element+oss实现前端分片上传和断点续传
纯前端实现: 切片上传 断点续传 .断点续传需要在切上上传的基础上实现 前端之前上传OSS,无需后端提供接口.先上完整代码,直接复制,将new OSS里的参数修改成自己公司OSS相关信息后可用,如遇问 ...