运算符:

  • 算术运算符: 加减乘除求余 + , - , * , / , %

当参与/运算的两个操作数都是整数时, 表示整数除法, 否则表示浮点除法.
例: 15 / 2 = 7; 15 % 2 = 1; 15.0 / 2 = 7.5
整数被0除会产生一个异常, 浮点数被0除将会得到无穷大或NaN结果.

  • 二元运算符:+=, *=,  %=

x += 4 等价于 x = x + 4 (通常将运算符放在赋值号的左侧, 如*=, %=)

  • 自增运算符和自减运算符:

int n = 12;
n++; 后缀方式先运算在加1
++n; 前缀方式先进行加1再运算

  • 关系运算符与boolean运算符

== , != , > , < , >= , <= , && , || , ! , ?:
&&与||是按照短路的方式

  • 位运算符(暂时看不懂!!):

& , | , ^ , ~ , >> , <<
&与|不按照短路的方式, 必须计算两个操作数的值.
^: 异或
~: 非
>> , <<: 移位运算符

运算符优先级:

    运算符                         结合性
  [].() (方法调用)                     从左向右
  ! ~ +(正) -(负) ~ ++ -- ()(强制类型转换) new          从右向左
  * / %                          从左向右
  +(加) -(减)                       从左向右
  << >> >>>                       从左向右
  < <= > >= instanceof                    从左向右
  == !=                          从左向右
  &(按位与)                        从左向右
  ^                            从左向右
  |                             从左向右
  &&                            从左向右
  ||                            从左向右
  ?:                           从右向左
  = += -= *= /= %= &= |= ^= <<= >>= >>>=            从右向左

    && 优先级高于||:
      a && b || c 等价于 (a && b) || c
    += 是右结合运算符所以:
      a += b += c 等价于 a += (b += c) // 将c加到b上之后, 再将b加到a上

taps:
  1. 优先级是从高到低书写的
  2. 结合性是元素安抚结合的顺序, 通常从左到右. 从右向左指符合与运算符右侧的内容结合.
  3. instanceof是判断对象是否为某个类或接口类型
  4. 对于不太清除的优先级, 可以使用小括号去书写, 也便于阅读.

java笔记 -- java运算的更多相关文章

  1. Java 笔记 —— java 和 javac

    Java 笔记 -- java 和 javac h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: ...

  2. java笔记——Java关键字static、final使用小结

    static  1. static变量     按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量:另一种是没有被static修饰的变量,叫实例变量.两者的 ...

  3. Java笔记--java一行一行写入或读取数据

    转自 Ruthless java一行一行写入或读取数据 链接:http://www.cnblogs.com/linjiqin/archive/2011/03/23/1992250.html 假如E:/ ...

  4. Java笔记--Java的List、Iterator用法

    1. List的使用 准备知识: List继承自Collection接口.List是一种有序集合,List中的元素可以根据索引(顺序号:元素在集合中处于的位置信息)进行取得/删除/插入操作. 跟Set ...

  5. java笔记 -- java字符串

    概念: Java字符串就是Unicode字符序列, Java没有内置的字符串类型, 而是在标准Java类库中提供了一个预定义类. 每个用双引号括起来的字符串都是String类的一个实例.String ...

  6. java笔记 -- java变量与常量的声明

    变量: 在Java中, 每一个变量属于一种类型. double salary int vacationDays; long earthPopulation; boolean done; 命名: 以字母 ...

  7. java笔记 -- java数据类型与类型转换

    Java是一种强类型语言, 这就意味着必须为每一个变量声明一种类型. Java中一共有8中基本类型: 4种整型: 整型: 用于表示没有小数部分的数值, 允许为负数 类型 存储需求 取值范围 int: ...

  8. java笔记 -- java简单结构代码解析及注释

    结构代码解析 public class FirstSample { public static void main(String[] args) { System.out.println(2.0-1. ...

  9. Think in Java笔记——Java与对象

    最近在重新学习Java,在阅读Java的经典著作——Java编程思想,因此每天记录阅读的心得. 当听到Java这个词时,大家一般想到的是面向对象,确实Java相对于C/C++这两门语言来说,Java最 ...

随机推荐

  1. 20175320 2018-2019-2 《Java程序设计》第2周学习总结

    20175320 2018-2019-2 <Java程序设计>第2周学习总结 教材学习内容总结 本周学习了教材的第二章及第三章的内容.在这两章中介绍了Java编程中的基本数据类型与数组以及 ...

  2. UCloud首尔机房整体热迁移是这样炼成的

    小结: 1.把两个机房在逻辑上变成一个机房: 2.新老机房的后端服务使用同一套 ZooKeeper,但是配置的却是不同的 IP: 3.UCloud内部服务所使用的数据库服务为MySQL, 内部MySQ ...

  3. Open_stack 有虚拟机端口不通的问题

    原因:流量表 解决办法:not修改流量表(容易出错,出错后果更严重):is迁移虚拟机这样会对应生成新的流量表,然后问题就解决了.

  4. springboot中通过cors协议解决跨域问题

    1.对于前后端分离的项目来说,如果前端项目与后端项目部署在两个不同的域下,那么势必会引起跨域问题的出现. 针对跨域问题,我们可能第一个想到的解决方案就是jsonp,并且以前处理跨域问题我基本也是这么处 ...

  5. SimplifyReader项目(转载)

    项目地址: https://github.com/SkillCollege/SimplifyReader SkillCollege / SimplifyReader 一款基于Google Materi ...

  6. #学号 20175201张驰 《Java程序设计》第1周学习总结

    教材学习内容总结 第一章 ·第一章的内容相对简单,我并未遇到大的困难. ·1.Java特点:语法简单.面向对象.与平台无关.动态. ·2.关于编写源文件:源文件名字必须与public类的名字相同:保存 ...

  7. netty如何实现零拷贝

    根据 Wiki 对 Zero-copy 的定义: "Zero-copy" describes computer operations in which the CPU does n ...

  8. MongoDB 之 你得知道MongoDB是个什么鬼 MongoDB - 1

    最近有太多的同学向我提起MongoDB,想要学习MongoDB,还不知道MongoDB到底是什么鬼,或者说,知道是数据库,知道是文件型数据库,但是不知道怎么来用 那么好,所谓千呼万唤始出来,现在我就拉 ...

  9. PTA第一个编程题总结

    7-1 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“沙漏形状”,是指每行输出奇数 ...

  10. js与jQuery的区别——每日一记录

    js是一种脚本语言,jQuery是在他基础上的一种框架