Java的运算符

Java的运算符

运算符是一种特殊符号,用以表示数据的运算、赋值和比较等共分以下几种:

1.1括号:() []

1.2一元运算符(只有1个操作数):!(逻辑取反)、+(正号)、-(负号)、自增自减:++、--

位运算符:~(整数机器码取反) +操作数1

注意: 自增自减,当操作数在符号后面时,先完成本次运算之后再进行加减操作。

!与~都是取反操作,但是!只适用于boolean,~只适用于整数;一元运算符:只有一个操作数的运算符

1.3 算术运算符:* /(求商) %(求余)

1.4 算术运算符:+ - 由左至右 操作数1+操作数2

1.5 位运算符:<< (左移)>>(右移) a<<n a为操作数,n为移位数,空出部分补0;

1.6 关系运算符:> >= < <=

1.7 关系运算符:==(判断左右两边是否相等) != (判断左右两边是否不等)

1.8 位运算符:&(与) 1100&1010=1000 0假1真

1.9 位运算符:^(异或) 1100^1010=0110 同假异真

1.10 位运算符:|(或) 1100|1010=1110

1.11 位运算符:&&(短路与) 若第一个条件为假,则结果为假,不再去判断第二个操作数

1.12 位运算符:||(短路或) 若第一个条件为真,则结果为真,不再去判断第二个操作数

1.13 三元运算符:?: 格式:条件?条件为真的结果:条件为假的结果

1.14 赋值运算符:=

所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

级别为 1 的优先级最高,级别 11 的优先级最低

PS:大家没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。例如:

分析:小括号优先级最高,因此

1、 执行 a + 18 ,结果为 30

2、 执行( a + 18 ) % 4 取模,结果为 2

3、 执行 a * ( ( a + 18 ) % 4 ),结果为 24

我的总结:

逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。

“&”和“&&”的区别:单与时,左边无论真假,右边都进行运算;双与时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。

“ ^ ”与“|”不同之处是:当左右都为true时,"^"结果为false。

原文发布于微信公众号 - java学习(javaxxf)

原文发表时间:2017-08-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏进击的君君的前端之路

函数与作用域

15540
来自专栏数据结构与算法

归并排序

将两个或两个以上有序的数列(或有序表),合并成一个仍然有序的数列(有序表),这种操作称为归并操作。这样的方法经常用于多个有序的数据文件归并成一个有序的数据文件。...

29060
来自专栏架构之路

Java继承类中static成员函数的重写

在java中,static成员函数是否可以被重写呢? 结论是,你可以在子类中重写一个static函数,但是这个函数并不能像正常的非static函数那样运行。 也...

30340
来自专栏java学习

Java基础第二天学习笔记

02.01_Java语言基础(常量的概述和使用)(掌握) * A:什么是常量 * 在程序执行的过程中其值不可以发生改变 * B:Java中常量的分类 * ...

35150
来自专栏deed博客

day02笔记

15620
来自专栏hbbliyong

Python正则进阶

  返回一个列表,如果正则表达式中没有分组,则列表中包含的是所有匹配的内容,如果正则表达式中有分组,则列表中的每个元素是一个元组,元组中包含子分组中匹配到的内容...

16530
来自专栏hbbliyong

Oracle字符串函数

Oracle字符串函数 平常我们用Oracle主要有两种字符串类型 1.char始终为固定的长度,如果设置了长度小于char列的值,则Oracle会自动用空格填...

48660
来自专栏Micro_awake web

JavaScript(四):运算符&数据类型转换

+:算符的加法;连接字符串 加法会将其它类型的值,自动转为字符串,然后再进行连接运算! 1 var a=1+2; 2 console.log('first:...

20660
来自专栏GreenLeaves

Array对象的判定

/* 关于JS对象类型的判断,最复杂的在于RegExp和Array了,判定RegExp的情形不较少,而Array就比较多了,下面就是判断Array的...

18550
来自专栏黑泽君的专栏

java基础学习_基础语法(上)03_day04总结

============================================================================= ==...

12010

扫码关注云+社区

领取腾讯云代金券