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 >> : ...
随机推荐
- [Java复习] 集合框架 Collection
Q1 Collection java的集合以及集合之间的继承关系? 数组和链表的区别? 固定长度,连续内存,不能扩展,随机访问快,插入删除慢.链表相反 List, Set, Map的区别? List, ...
- OpenCL如何获取最小线程并行粒度
由于OpenCL是为各类处理器设备而打造的开发标准的计算语言.因此跟CUDA不太一样的是,其对设备特征查询的项更上层,而没有提供一些更为底层的特征查询.比如,你用OpenCL的设备查询API只能获取最 ...
- python之scrapy模块scrapy-redis使用
1.redis的使用,自己可以多学习下,个人也是在学习 https://www.cnblogs.com/ywjfx/p/10262662.html官网可以自己搜索下. 2.下载安装scrapy-red ...
- mysql 截取字符函数substring(param1,param2,param3) 的用法
substring(paramter1,paramter2,paramter3) 截取字段长度 paramter1 被截取的字段paramter2 从第几位开始截取,负数表示从末尾开始数,的位数开始 ...
- 前端学习(一) html介绍和head标签
HTML 一. HTML 介绍 1. HTML概述:html全称Hyper Text Mackeup Language, 翻译为超文本标记语言, 它不是一种编程语言, 是一种描述性的标记语言, 用于描 ...
- 【HANA系列】SAP HANA SQL IFNULL和NULLIF用法与区别
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL IFN ...
- golang中字符串内置函数整理
字符串内置函数 1. 判断字符串的长度 str := "korea国" fmt.Println("str len=", len(str)) 2. 字符串遍历,同 ...
- 如何查看linux系统安装时间
第一种方法: 先查看系统盘挂到哪个分区上,然后用 dumpe2fs 查看这个磁盘分区 创建的时间,即可查出此 服务器 系统安装的时间.() # dumpe2fs /dev/sda3|grep -i ...
- zping ping包工具20180605.exe测试版
链接: https://pan.baidu.com/s/1WB3BZn0r9n4DRU_8bNC65g 提取码: mybi zping的第一个exe版本由于未对兼容性进行测试,使用python3.6编 ...
- windows环境jar包部署到linux服务器,一键操作(帮助说明)
背景:在上次https://www.cnblogs.com/shexunyu/p/11165282.html发布了第一个版本后,后面增加了相关功能 需求:做下简单的说明文档 下载:https://fi ...