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 ...
随机推荐
- Tomcat7调试运行环境搭建与源代码分析入门
1. 需要准备好下面这些工具 JDK 1.6+ Maven 2或3 TortoiseSVN 1.7+ (从1.7开始”.svn”目录集中放在一处了,不再每个目录下都放一份) Eclipse 3.5+ ...
- IOS让返回按钮显示自定义标题而不是上个ViewController的title
在开发IOS的时候发现当从一个ViewController跳转到另一个ViewController时,被跳转到的那个ViewController的返回按钮总是显示的是上个ViewController的 ...
- 举例说明:Hadoop vs. NoSql vs. Sql vs. NewSql
转自:http://blog.jobbole.com/86269/ 尽管层次数据库如今在大型机上依然被广泛使用,但关系数据库(RDBMS)(SQL)已经占领了数据库市场,并且表现的相当优异.我们存 ...
- 硬件设计之串口收发器---ISO1050 (现行) 隔离式 5V CAN 收发器
http://www.ti.com.cn/product/cn/iso1050 http://www.deyisupport.com/question_answer/dsp_arm/sitara_ar ...
- php的form中元素name属性相同时的取值问题
php的form中元素name属性相同时的取值问题:修改元素的名称,在名称后面加上 '[]',然后取值时即可得array()数组. 一.以复选框为例: <html> <head> ...
- 去死吧!USB转串口!!!
首先,这个题目有两种歧义:1.USB转232串口(严格说就是这种)! 2.USB转USART串口(通常都是这么叫,认为就是这,理论上是错误的,歧义所在)! USB转TTL.USB转232.USB转串口 ...
- 自动化测试的组成部分:SEARCH
在考虑自动化测试用例时,不仅仅要考虑测试的执行步骤.在运行任何步骤之前,程序必须处在能够执行测试的状态.在测试执行后,至关重要的是知道测试是否通过,并且测试结果一定要被保存到某处以待检查或进一步分析. ...
- PHP的只是结构图
- Spring_day04--HibernateTemplate介绍_整合其他方式_Spring分模块开发
HibernateTemplate介绍 1 HibernateTemplate对hibernate框架进行封装, 直接调用HibernateTemplate里面的方法实现功能 2 HibernateT ...
- THINKPHP5判断当前浏览器请求方式
作用 代码 是否为 GET 请求 if (Request::instance()->isGet()) 是否为 POST 请求 if (Request::instance()->isPost ...