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的运算符,分为四类: 算数运算符.关系运算符.逻辑运算符.位运算符. 算数运算符():+ - * / % ++ -- 关系运算符():== != > >= < <= 逻 ...
随机推荐
- 使用 Tye 辅助开发 k8s 应用竟如此简单(五)
续上篇,这篇我们来进一步探索 Tye 更多的使用方法.本篇我们来了解一下如何在 Tye 中实现对分布式链路追踪. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次 ...
- Vue的学习总结之---Vue项目 前后端分离模式解决开发环境的跨域问题
原文:https://blog.csdn.net/localhost_1314/article/details/83623526 在前后端分离的web开发中,我们与后台联调时,会遇到跨域的问题. 比如 ...
- JS驼峰与下划线互转
1.下划线转驼峰 function underlineToHump(s){ var a = s.split("_"); var result = a[0]; for(var i=1 ...
- yum install valgrind.x86_64
Reference: https://cloudlinux.zendesk.com/hc/en-us/articles/115004075294-Fix-rpmdb-Thread-died-in-Be ...
- Elasticsearch常用API
Note:以下API基于ES 5x,6x/7x可能略有不同,具体查看官方文档 ES常用API # 查看集群node curl "http://localhost:9200/_cat/node ...
- 后端程序员之路 51、A Tour of Go-1
# A Tour of Go - go get golang.org/x/tour/gotour - https://tour.golang.org/ # welcome - ...
- 基于Hi3559AV100 RFCN实现细节解析-(2)RFCN数据流分析
下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,整个过程涉及到VI.VDEC.VPSS.VGS.VO.NNIE,其中涉及的内容,大家可以参考之前我写的博客: Hi3559AV100的 ...
- 强制断开ssh连接出现ssh崩溃问题
出现原因 finalshell意外终止,导致ssh连接意外终止 之后怎么都连不上虚拟机的ssh,一看是虚拟机的ssh已经被意外暂停,可能是跟finalshell的意外终止有关 解决 chmod 600 ...
- window 10 下 --excel | power query 通过 ODBC链接 mysql 数据库
excel链接到mysql的方法有几种,今天主要介绍如何通过ODBC链接 odbc是 "开放数据库连接",你可以通过下载插件使得自己的excel可以连接到不同的数据库. 关于版本的 ...
- 简单3步快速生成千万级别mysql测试数据库,模拟电商数据
https://blog.csdn.net/wuda0112/article/details/88387735 github项目地址:https://github.com/wuda0112/mysql ...