算术运算符:

算术运算符的注意问题

1. 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。但被模数是负数就另当别论。

-5%3=-2;-5%-3=-2;符号跟被模数(左边)。

2. 对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。

例如:int x=3510;x=x/1000*1000; x的结果是? 3000

3560.0/1000*1000=3560.0

3. “+”除字符串相加功能外,还能把非字符串转换成字符串 ,

例如:System.out.println("5+5="+5+5);//打印结果是?5+5=10

int a = 3; a+=5;几乎等同运算a=a+5;但+=隐含自动转换

比较运算符/关系运算符:

逻辑运算符:

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

· “&”和“&&”的区别(不短路跟短路的区别):

单&时,左边无论真假,右边都进行运算;

双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

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

有些时候这个会导致计算不同:

3. 异或( ^ )与或( | )的不同之处是:异或左右都为true时,结果为false(true^true==false)。

位运算符:

位运算是直接对二进制进行运算。(补码)

对于<< 和>>,移n位,就是对原数值乘以(<<)或者除以(>>)2的n次幂。

· 不要迷糊--负数右移,原符号位上的数也右移!(如果原本该数为负数,按照原理,右移则看最高位补空缺,保证了此时的原数值的符号不变)

特殊使用技巧:

一个数X对同一个数异或两次,所得结果为X:6^3^3=6,3^6^3=6

练习:

11.最有效率的方式算出2乘以8等于几?2<<3?

2.对两个整数变量的值进行互换

·

·

·

&运算可用于获取二进制的有效位

异或

位运算符可以操作字符,但结果为int

三元运算符:

· 格式:

(条件表达式)?表达式1:表达式2; 括号有时可没有,但为了格式化,写了好。

如果条件为true,运算后的结果是表达式1;

如果条件为false,运算后的结果是表达式2;

· 示例:

获取两个数中大数。

int x=3,y=4,z;

z = (x>y)?x:y;//z变量存储的就是两个数的大数。

运算符优先级:

Java:运算符的问题的更多相关文章

  1. Java笔记2-数据类型,变量,Java运算符

    我们编写软件,目的是为了高效的操作(增,删,改,查)数据. 数据类型 1.基本类型(8种)byte 字节型 -128~127short 短整型 -32768~32767int 整型 -21474836 ...

  2. Java运算符优先级(转)

    转自:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 ...

  3. 【转】Java运算符优先级

    原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 ...

  4. java运算符优先级与流程控制

    1. Java 的方法Method (函数 Function), 功能, 动作 1) 方法就是函数: y=f(x)=3x+6; 2) 方法的语法   (修饰词)(返回值类型)(方法名)(参数列表){  ...

  5. Java基本语法-----java运算符的优先级与结合性

    这是本人以前的上学期间java 运算符这块知识的总结的,截图存到了word里,大家将就看下吧(不会用Markdown的表格 不然就在写一遍了 T T). [正在看本人博客的这位童鞋,我看你气度不凡,谈 ...

  6. Java 基本语法---Java运算符

    Java 基本语法---Java运算符 0. 概述 Java中的运算符主要分为以下几种: 算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 位运算符 其他运算符 1. 算术运算符 操作符 描 ...

  7. [转]Java 运算符的优先级

    Java 运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 &l ...

  8. Java运算符使用总结(重点:自增自减、位运算和逻辑运算)

    Java运算符共包括这几种:算术运算符.比较运算符.位运算符.逻辑运算符.赋值运算符和其他运算符.(该图来自网络) 简单的运算符,就不过多介绍使用了,可自行测试.关于赋值运算,可以结合算术运算和位运算 ...

  9. Java 运算符及优先级

    运算符 分割符: , ; [] () 算数运算符: + - * / % ++ -- 关系运算符: > < >= <= == != 逻辑运算符: ! & | ^ & ...

  10. 【java基础】Java运算符优先级

    Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右   [ ] 方括号 从左到右   2 + 正号 从右到左 单目 - 负号 ...

随机推荐

  1. RocketMq(一)初识消息中间件

    1.对消息的理解 消息即为数据(data),数据有一定的规则.长度.大小. Java Message Service(Java消息服务)简称JMS,为Java 程序提供一种通用的方式,来创建.发送.接 ...

  2. 五:理解控件的运行机制(例:基于Control命名空间的简单控件)

    一:先用最简短的话说点理论的1.asp.net中所有的标准控件都可以重写 2.和控件相关的命名空间有 System.Web.UI.Control是所有控件的基类只提供简单的呈现逻辑,不支持样式表 Sy ...

  3. http错误代码含义

    "100" : Continue "101" : witching Protocols "200" : OK "201" ...

  4. 深入了解preventDefault与stopPropagation

    event.preventDefault()用法介绍(阻止默认事件) 该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作).例如,如果 type 属性是 "subm ...

  5. Python学习--11 面向对象高级编程

    多重继承 Python里允许多重继承,即一个类可以同时继承多个类: class Mammal(Animal): pass class Runnable(object): def run(self): ...

  6. Chapter 3 Phenomenon——19

    His unfriendliness intimidated me. 他的不友好恐吓到了我. My words came out with less severity than I'd intende ...

  7. 前端组件化Polymer入门教程(2)——Hello world

    本节为体验篇,就是让你了解它有哪些功能,不做详细说明,后面再来讲细节. 自定义元素 组件页 <link rel="import" href="../polymer- ...

  8. java中 immutable,future,nio

    什么是Future? 用过Java并发包的朋友或许对Future (interface) 已经比较熟悉了,其实Future 本身是一种被广泛运用的并发设计模式,可在很大程度上简化需要数据流同步的并发应 ...

  9. JBOSS Spring Web

    jndi: <datasources> <xa-datasource> <jndi-name>jdbc/sss-local</jndi-name> &l ...

  10. LVS持久化与超时时间问题分析

    前言 在上一篇文章<搭建DNS+LVS(keepAlived)+OpenResty服务器(Docker环境)>中,我搭建了dns+lvs+openresty+web集群:先来回顾一下架构图 ...