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 >> : ...
随机推荐
- swagger-ui 系统配置过程(基于spring+springmvc+swagger+springfox配置 web-api 管理系统)
web工程部分框架信息:spring springmvc swagger springfox maven 参考文档:https://www.cnblogs.com/exmyth/p/7183753.h ...
- umask 介绍
umask码 是用户创建文件或目录的初始权限设置值 文件或目录的权限:读: r — 4写: w — 2执行: x — 1 输入umask 查看umask 码 设定umask码,umask 0033 1 ...
- Nginx+FastCGI到底是谁影响超时时间
需求: 一个php程序要跑一段时间,但是时间不确定. 问题: 当该php程序运行超过一段时间被强制断开连接. PHP本身超时处理 在 php.ini 中,有一个参数 max_execution_tim ...
- UUID相同导致的网络连接问题
目录 场景 思路 解决过程 提升虚拟机配置 直连交换机 最终解决方案 总结 场景 有同事从公司寄了一台服务器到现场,用来安装数据库.缓存等组件供开发使用.到了之后,连接电源.网线,设置IP,用vSph ...
- Linux添加日常任务监控文件或日志大小
1.使用命令"vi/vim xxx.sh"编写shell脚本文件 #!/bin/bash #author yangli # #设置文件检测路径 file_check_path=&q ...
- 【并行计算-CUDA开发】CUDA软件架构与Nvidia硬件对应关系
前面扯了很多,不过大多都是在讲CUDA 在软体层面的东西:接下来,虽然Heresy 自己也不熟,不过还是来研究一下硬体的部分吧-毕竟要最佳化的时候,好像还是要大概知道一下相关的东西的.这部分主要参考资 ...
- C学习笔记-预备知识
计算机结构组成 CPU(中央处理器)(控制器+运算器) 存储器(内存+外存) 输出设备 输入设备 计算机系统组成 硬件系统 主机 中央处理器 运算器 控制器 内存储器 只读存储器 随机存储器 外部设备 ...
- Laravel从模型中图片的相对路径获取绝对路径
在模型product.php中增加以下方法.数据库图片字段为image.存储的图片相对路径 public function getImageUrlAttribute() { // 如果 image 字 ...
- fastadmin model关联模型 关联查询问题
一对一关联 public function getGoodName(){ return $this->belongsTo('app\api\model\goods\Good','goods_go ...
- [转帖]中芯国际14nm秋季量产 7nm工艺或在2020年底问世
中芯国际14nm秋季量产 7nm工艺或在2020年底问世 https://news.mydrivers.com/1/641/641087.htm 中芯正在发力.. 今年秋天 14nm两场 明年底 7n ...