Java ——运算符
本节重点思维导图
递增递减
前缀自增自减法(++a,--a): 先进行自增、减运算,再进行表达式运算
后缀自增自减法(a++,a--): 先进行表达式运算,再进行自增、减运算
例【1】:
- int a = 2;
- int b = ++a;
- System.out.println("++a = " + b);
- a=2;
- int c = --a;
- System.out.println("--a = " + c);
- a=2;
- int x = a--;
- System.out.println("a-- = " + x);
- a=2;
- int y = a++;
- System.out.println("a++ = " + y);
结果: 3 1 2 2
例【2】:
- int a = 2;
- if(a++ == 2)
- System.out.println("a++ = 2");
- a = 2;
- if(a-- == 2)
- System.out.println("a-- = 2");
- a = 2;
- if(--a == 1)
- System.out.println("--a == 1");
- a = 2;
- if(++a == 3)
- System.out.println("++a == 3");
结果:
- a++ = 2
- a-- = 2
- --a == 1
- ++a == 3
赋值运算符
- int a =3;
- a+=3; a = a+3;
- a-=4; a = a-4;
- a*=5 a= a*5;
- a/= 3 a= a/3;
- a%b
- a%=b a = a%b;
关系运算符
结果是boolean类型
>、>=、<、<=、==、!=
- int a = 47;
- int b = 7;
- boolean res1 = a>b; //if a > b,res1 = true
- System.out.println(res1);
- boolean res2 = a == b; //if a == b,res2 = true
- System.out.println(res2);
- //结果是true false
逻辑运算符
&& 与 ||或 !非
- boolean b1 = true;
- boolean b2 = false;
- boolean b = b1 || b2;
- System.out.println(b);
- System.out.println(!b2);
&& || 与& |的区别,双的有短路作用:
短路:当结果一定成立时,就不再计算后面的了
- int a = 2;
- boolean b1 = a++ == 2;
- System.out.println(b1);
- System.out.println(a);
- boolean b2 = --a != 2;
- System.out.println(b2);
- System.out.println(a);
- System.out.println("--------------------");
- boolean res = b1 && b2;
- System.out.println(res);
- System.out.println(a);
结果:
- true
- 3
- false
- 2
- --------------------
- false
- 2
^异或运算符
字符能够进行异或运算
一个字符进行两次异或运算就会回到原来的值
- char c ='a';
- System.out.println(c^'0');
- System.out.println((char)(c^'0'));
- System.out.println(c^'0'^'0');
- System.out.println((char)(c^'0'^'0'));
结果:
- 81
- Q
- 97
- a
三目运算符
- int a = 10;
- int b = 15;
- String res = a>b ? "max is a":"max is b";
- System.out.println(res);
instanceof 运算符
移位运算符
<<:向左移位,相当于变大为原来的2的多少次幂
>>:向右移位,相当于变小为原来的2的多少次幂
可以快速地计算2的多少次方
- int a = 1<<3; //1*2^3
- System.out.println(a);
- a = 4<<6; //4*2^6=2^8
- System.out.println(a);
- a = 256>>3;
- System.out.println(a);
8
256
32
instanceof 额外补充
1.【总结在上方思维导图中】
2.
Java ——运算符的更多相关文章
- Java笔记2-数据类型,变量,Java运算符
我们编写软件,目的是为了高效的操作(增,删,改,查)数据. 数据类型 1.基本类型(8种)byte 字节型 -128~127short 短整型 -32768~32767int 整型 -21474836 ...
- Java运算符优先级(转)
转自:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 ...
- 【转】Java运算符优先级
原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 ...
- java运算符优先级与流程控制
1. Java 的方法Method (函数 Function), 功能, 动作 1) 方法就是函数: y=f(x)=3x+6; 2) 方法的语法 (修饰词)(返回值类型)(方法名)(参数列表){ ...
- Java基本语法-----java运算符的优先级与结合性
这是本人以前的上学期间java 运算符这块知识的总结的,截图存到了word里,大家将就看下吧(不会用Markdown的表格 不然就在写一遍了 T T). [正在看本人博客的这位童鞋,我看你气度不凡,谈 ...
- Java 基本语法---Java运算符
Java 基本语法---Java运算符 0. 概述 Java中的运算符主要分为以下几种: 算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 位运算符 其他运算符 1. 算术运算符 操作符 描 ...
- [转]Java 运算符的优先级
Java 运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 &l ...
- Java运算符使用总结(重点:自增自减、位运算和逻辑运算)
Java运算符共包括这几种:算术运算符.比较运算符.位运算符.逻辑运算符.赋值运算符和其他运算符.(该图来自网络) 简单的运算符,就不过多介绍使用了,可自行测试.关于赋值运算,可以结合算术运算和位运算 ...
- Java 运算符及优先级
运算符 分割符: , ; [] () 算数运算符: + - * / % ++ -- 关系运算符: > < >= <= == != 逻辑运算符: ! & | ^ & ...
- 【java基础】Java运算符优先级
Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右 [ ] 方括号 从左到右 2 + 正号 从右到左 单目 - 负号 ...
随机推荐
- 应急响应中find命令总结
在应急响应中,我们经常会使用find命令来查找系统中被黑客修改过的文件,或者被上传的木马后门文件,灵活使用find命令可以达到事半功倍的效果,现总结下使用技巧 举例,查找最近被更改的jsp文件 fin ...
- keepalived启动后报错:(VI_1): received an invalid passwd!的解决办法
一.配置好keepalived.conf文件后,启动keepalived,查看/var/log/message日志报错: [root@push-- sbin]# tail -f /var/log/me ...
- 索引介绍,转载自:https://tech.meituan.com/2014/06/30/mysql-index.html
索引原理 除了词典,生活中随处可见索引的例子,如火车站的车次表.图书的目录等.它们的原理都是一样的,通过不断的缩小想要获得数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是我们总 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(11)|Structs结构体]
[易学易懂系列|rustlang语言|零基础|快速入门|(11)] 有意思的基础知识 Structs 我们今天来看看数据结构:structs. 简单来说,structs,就是用来封装相关数据的一种数据 ...
- QByteArray引发的bug
QByteArray引发的bug 在接收UDP数据的函数里,有如下代码片段 if(0x10 == data.size() && 0xCA == (unsigned char)data. ...
- 多层for循环嵌套,如何能优化一点点,从运行时间维度
将循环次数多的放在最内层,循环次数最少的放在最外层 换句话说,按照循环次数从小到大依次嵌套
- git shell 右键启动注册表
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\Background\shell\Git Bash Here] ): ...
- Codeforces Round #568 (Div. 2) D. Extra Element
链接: https://codeforces.com/contest/1185/problem/D 题意: A sequence a1,a2,-,ak is called an arithmetic ...
- 对ECMAScript的研究-----------引用
ECMAScript 新特性与标准提案 一:ES 模块 第一个要介绍的 ES 模块,由于历史上 JavaScript 没有提供模块系统,在远古时期我们常用多个 script 标签将代码进行人工隔离.但 ...
- 虚拟机安装 Output error file to the following location
有的用户会对你中安装虚拟机系统,但偶尔会在安装过程中遇到一些问题.比如在电脑安装虚拟机系统时出现提示“Output error file to the following location”,这一般是 ...