Java 运算符及优先级
运算符
- 分割符: , ; [] ()
- 算数运算符: + - * / % ++ --
- 关系运算符: > < >= <= == !=
- 逻辑运算符: ! & | ^ && ||
- 赋值运算符: =
- 扩展赋值运算符: += -= *= /=
- 三目运算符: ? :
- 字符串连接运算符: +
“+” 和 “-” 运算符还可以作为数据的正负符号。
&&:短路与,只要其中一个表达式或方法的值为false,那么结果就为false,且不执行之后的操作。
||:短路或,只要其中一个表达式或方法的值为true,那么结果就为true,且不执行之后的操作。
short s = 10;
//错误,s为short,1默认为int,先把右边s转换为int再相加,结果为int
//s = s + 1; //错误
s = (short)(s + 1); //正确
s += 1; //正确,等同于 s = (short)(s + 1);
三目运算符:
x ? y : z x为boolean类型,若x为true,则表达式结果为y,否则为z
字符串连接符:只要“+”任意一边出现字符串,“+”就表示字符串连接符
- 运算符“+”用于数值类型数据,是加法运算符
例:"abd" + "de" 结果:"abcde"
- 用于字符串李类型(String),是连接符
- 字符串+数值,Java会自动将数值转换成字符串,然后连接成新字符串
例:"12" + 34 结果:"1234"
System.out.println(12+34+""); //"46"
System.out.println(""+12+34); //"1234"
运算符的优先级
- 除了单目运算符、赋值运算符和条件运算符,其他的运算符都是从左到右结合的。
- 运算符优先级口诀:非、算、关、与或、赋
- 下表为优先级顺序,优先级高的在上部,同一行优先级相同
|
运算符说明 |
Java运算符 |
|
分割符 |
. [] () , ; |
|
单目运算符 |
+ - ~ ! ++ -- |
|
创建或类型转换 |
new (type) |
|
乘法/除法 |
* / % |
|
加法/减法 |
+ - |
|
关系 |
< <= >= > instanceof |
| 等价 |
== != |
|
按位与 |
& |
| 按位异或 |
^ |
| 按位或 |
| |
| 条件与 |
&& |
| 条件或 |
|| |
|
条件 |
? : |
| 赋值 |
= |
Java 运算符及优先级的更多相关文章
- [转]Java 运算符的优先级
Java 运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 &l ...
- Java运算符及优先级(全)
运算符是一种特殊的符号,用以表示数据的运算.赋值和比较等. Java运算符分为以下几种: • 算术运算符:+,-,*,/,%,++,-- • 赋值运算符:= • 扩展后的赋值运算符:+=,-=,*=, ...
- Java运算符的优先级(从高到低)
运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 << ...
- Java基本语法-----java运算符的优先级与结合性
这是本人以前的上学期间java 运算符这块知识的总结的,截图存到了word里,大家将就看下吧(不会用Markdown的表格 不然就在写一遍了 T T). [正在看本人博客的这位童鞋,我看你气度不凡,谈 ...
- java运算符的优先级
Java 编辑 运算符 结合性 [ ] . ( ) (方法调用) 从左向右 ! ~ ++ -- +(一元运算) -(一元运算) 从右向左 * / % 从左向右 + - 从左向右 << & ...
- java运算符的优先级和详解
优先级 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右 [ ] 方括号 从左到右 2 + 正号 从右到左 单目 - 负号 从右到左 单目 ++ ...
- JAVA运算符和优先级
1.算术运算符: ++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同,如: ①int a=5: int b=a++: #先把a赋给b,a再自增 ②int a=5: int b=+ ...
- java 运算符的优先级比较
口诀:淡云一笔安洛三福 单目>算数运算符>移位>比较>按位>逻辑>三目>赋值 单目运算符:+,-,++,-- 算数运算符:+,-,*,/,% 移位运算符:&l ...
- java中运算符的优先级
所谓优先级,就是在表达式中的运算顺序.Java 中常用的运算符的优先级如下表所示: 级别为 1 的优先级最高,级别 11 的优先级最低.譬如,x = 7 + 3 * 2 得到的结果是 13 &quo ...
随机推荐
- asp.net曲线图
highcharts的曲线图控件真的很强大,自己研究了下,做了一个简单的,给自己留个备忘,希望能帮到需要的朋友 Dome下载:http://files.cnblogs.com/linyijia/asp ...
- js生成唯一的uuid
---恢复内容开始--- 在做项目的时候出现这样的一种情况,需要动态生成唯一的uuid,刚开始我的思路是这样的,我可以根据时间来做,然后出现了下面的思路: var uuid = "cms&q ...
- C语言 百炼成钢24
/* 题目60:从键盘中输入一个不超过40个字符的字符串, 再输入3个位数(每次删除一个字符),删除对应 位数的字符,然后输出删除指定字符后的字符串. 输入:hellokityManGood 3 6 ...
- 使用OpenFace进行人脸识别(1)
http://www.chinacloud.cn/show.aspx?id=25992&cid=12 本文中,笔者将介绍OpenFace中实现人脸识别的pipeline,这个pipeline可 ...
- 嵌入式开发之davinci--- 8148/8168/8127 中的图像处理算法优化库vlib
The Texas Instruments VLIB is an optimizedImage/Video Processing Functions Library for C programmers ...
- 【noip模拟题】藏宝图(prim)
好神的一题.. 一开始没想多久就看题解了QAQ.. 首先我们发现,这棵树任意两个点的边一定是最小的(即所有其它这两个点的路径都比这条边大,才有可能出解) 然后生成树后再算距离判断即可.. 注意特判n= ...
- Elasticsearch JVM Heap Size大于32G,有什么影响?
0.引言 在规划ES部署的时候,会涉及到data node的分配堆内存大小,而Elasticsearch默认安装后设置的内存是1GB,对于任何一个业务部署来说,这个都太小了. 设置Heap Size的 ...
- PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
php屏蔽电话号码中间四位: Method 1: function hidtel($phone){ $IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9] ...
- RabbitMQ OS X下安装及常用命令-1
RabbitMQ的主页在http://www.rabbitmq.com/ . 1. 安装Erlang RabbitMQ是用Erlang编写的,所以需要先安装Erlang,如果有的话跳过 ...
- Loadrunner测试实例分析
LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源.数据库服务器资源等几个方面分析,如图1 ...