java中的运算符与表达式
运算符与表达式
运算符分类:
0.赋值运算符 =
1.算数运算符 + - * / %
2.比较运算符 < > == <= >= !=
3.逻辑运算符 & | ! && ||
4.位运算符 & | ~ << >> ^
5.一元运算符 ++ -- += -= *= /= %=
6.二元运算符
7.三元运算符 变量=条件?值1:值2;
*逻辑运算符 & | ! && || (与或非)
*注意:逻辑运算符左右两边所存放的变量或者表达式必须是布尔类型的
*运算公式:
非:真非为假,假非为真
与:
true 与 true = true
true 与 false = false
false 与 true = false
false 与 false = false
或:
true 或 true = true
true 或 false = true
false 或 true = true
false 或 false = false
&和&&的区别
&(单位与):不管‘与’符号左边的逻辑运算结果是真还是假,都会判断符号右边的结果,耗时。
&&(短路与):如果‘与’符号左边的结果为假,就不会再判断右边的运算结果,因为最终的结果已经确定,为假。省时
|和||的区别
|(单位或):不管‘或’符号左边的逻辑运算结果是真还是假,都会判断符号右边的结果,耗时。
||(短路或):如果‘或’符号左边的结果为真,就不会再判断右边的运算结果,因为最终的结果已经确定,为真。省时
*位运算符 & | ~ << >> ^
运算时:将 1 看成 true ,0看成false
& | ~ 与逻辑运算符公式一样
1010-0110 = 166
0110-1010 = 106
1010-0110
&0110-1010
---------------
0010-0010 = 34
1010-0110
|0110-1010
---------------
1110-1110=238
1010-0110
~0101-1001=89
-167
<< 左移
8<<3=64 8对应的二进制数项做移动三个单位
相当于乘法运算 8 * 8=64
0000-1000
0100-0000=64
>> 右移
9 >> 2 = 2 9对应的二进制数向右移动两个单位
相当于除法运算 9 / 4=2
0000-1001
0000-0010 = 2
异或 ^
异或:相同为假,不同为真
true 异或 true = false
true 异或 false = true
false 异或 true = true
false 异或 false = false
结论:任何数与0异或,结果都等于这个数。
相同的两个数之间异或,结果为0
多个值之间相互异或时,异或满足交换律。
一元运算符 ++ -- += -= *= /= %=
指,只经过一次运算就完成赋值和运算结果的功能
++ 自增 每次自增1
i++和++i
==>i=i+1;
i++与++i的区别
++i先自增再运算
i++先运算再自增
-- 自减
i-- --i ==>i=i-1;
自增 10 ==>i=i+10;
+=:自增n
i+=10;==>i=i+10;
*三元运算符 变量=条件?值1:值2;
经过三次运算得到结果:
1.判断条件是否成立(条件运算符)
2.如果条件成立,取值1,否则取值2 。
3.将取出的值赋值给变量(赋值运算符)
java中的运算符与表达式的更多相关文章
- Java中的运算符及表达式
常用的运算符:赋值运算符(=).加法运算符(+).乘法运算符(*).除法运算符(/).括号运算符(( )).余数运算符(%).布尔运算符. 注释符(//).注释的内容为双反斜杠后的内容至换行结束. j ...
- 【JAVA零基础入门系列】Day5 Java中的运算符
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rec ...
- Java 中的运算符和流程控制
Java 中的运算符和流程控制 + 面试题 算术运算符 Java 中的算术运算符,包括以下几种: **算术运算符** **名称** **举例** + 加法 1+2=3 - 减法 2-1=1 \* 乘法 ...
- JAVA_SE基础——11.Java中的运算符
在程序设计中,运算符应用得十分广泛,通过运算符可以将两个变量进行任意运算.数学中的"+"."-"."*"."/"运算符同 ...
- java基础(4)--运算符及表达式
运算符及表达式 算数运算 加(+) 减(-) 乘(*) 除(/) 取余(%) 自增(++) 自减(- -) 注意点 1. 同种类型参与运算(可能需要自动类型转换),返回同种类型 2. 整数的除法是整 ...
- Java中逗号运算符的使用
今天看到一道面试题,题目如下: 题目解释: 上面有一个类,有四个成员属性,以及两个构造方法(一个四个参数,一个两个参数),题目给出四个选项,问哪些选项可以满足在在四个参数的构造方法中完成x=a,y=b ...
- Java中移位操作运算符的理解
java中的移位运算符有三种: 1. <<: 左移 2. >>: 右移 3. >>>: 无符号右移 使用方法:左移就是将左边的操作数在内存中的二进制数据左移指 ...
- Java中位运算符的使用
先预知识: 数据在计算机中是以二进制的形式进行存储的,而二进制在内存中是以补码的形式进行存储的.在介绍位运算之前,首先来看一下原码.反码和补码的概念.由于正数的原码.反码和补码的形式都是一样的,所以以 ...
- Java 中位移运算符 >>,>>>,<<
Java 中的三种位移运算符 java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : ...
随机推荐
- React里单页面div自适应浏览器高度占满屏幕
可以用绝对定位方式,让div占满屏幕,css样式如下: height: 100%; width: 100%; position: absolute; top: 0px; bottom: 0px;
- h5 与原生 app 交互的原理
现在移动端 web 应用,很多时候都需要与原生 app 进行交互.沟通(运行在 webview中),比如微信的 jssdk,通过 window.wx 对象调用一些原生 app 的功能.所以,这次就来捋 ...
- java使用nio(Paths,Files)遍历文件目录,转成java.io.File
String directory = "C:\\Users\\Administrator\\AppData\\Local\\Temp\\8ad088a2-0bb3-41dc-89d9-2c5 ...
- vue的双向绑定和依赖收集
在掘金上买了一个关于解读vue源码的小册,因为是付费的,所以还比较放心 在小册里看到了关于vue双向绑定和依赖收集的部分,总感觉有些怪怪的,然后就自己跟着敲了一遍. 敲完后,发现完全无法运行, 坑啊 ...
- 感知器做二分类的原理及python实现
本文目录: 1. 感知器 2. 感知器的训练法则 3. 梯度下降和delta法则 4. python实现 1. 感知器[1] 人工神经网络以感知器(perceptron)为基础.感知器以一个实数值向量 ...
- 某CTF比赛writeup
看到群里别人参加比赛发上来的附件,自己尝试解了一下. 1.提示RSA,提供flag.enc和pub.key附件 一看就是解RSA,公钥分解得到n和e n=86934482296048119190666 ...
- Java垃圾收集算法1
Java垃圾收集算法 由于垃圾收集算法的实现涉及大量的程序细节,而且每个平台的虚拟机操作内存的方法又各不相同,因此博客中不过多的讨论算法的实现,只是介绍几种算法的思想以及发展. 相关阅读: 1.深入理 ...
- mapreducer计算原理
mapreducer计算原理
- python 配合 es 查询数据
1.python脚本 [root@do1cloud03 ~]# cat python-es.py #!/usr/bin/env python3 from elasticsearch import El ...
- 使用Minikube运行一个本地单节点Kubernetes集群
使用Minikube是运行Kubernetes集群最简单.最快捷的途径,Minikube是一个构建单节点集群的工具,对于测试Kubernetes和本地开发应用都非常有用. ⒈安装Minikube Mi ...