`
androidssh
  • 浏览: 112150 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

全面总结java操作符

    博客分类:
  • java
阅读更多

     java操作符共分为九种:1、赋值(=)2、算术运算符(+,  -,  *, /,  %)3、关系操作符(< ,> ,<= , >=, ==, !=)4、逻辑操作符(&&,||,!)5、按位操作符(&,|,~,^)6、移位操作符(<<,>>,>>>)7、一元加、减操作符(-,+)8、自动递增递减运算符(++,--)9、三元操作符if-else(boolean-exp ? value0 : value1)。几乎所有的操作符都只能操作java“基本类型”,例外的操作符是=,==和!=操作符能操作所有对象,String类可以支持+,+=操作符。

1、操作符优先级

    学过数学的都应没问题了,这里不再谈了

2、可以同时进行运算与赋值操作的操作符有:算术运算符(+=,  -=,  *=, /=,  %=,)、移位操作符(<<=,>>=,>>>=)和按位操作符(&=,|=,^=)

3、整数除法中,除数与被除数可以的类型(char、byte 、short 、int 、long、 float 、double),除法结果取除数与被除数类型最大的,默认是int,如果除数与被除数的类型都是(char、byte 、short 、int 、long、 float) 类型,哪么得到的会直接去掉结果的小数位,而不是四舍五入。

4、关系运算符==和!=比较的是对象的引用,equals()的默认行为也是比较对象的引用,但大多数java类库都实现了equals()方法,使它变成比较对象的内容,而非比较对象的引用。所有如果是自己创建的新类要覆盖equals()方法,否则还是比较对象的引用。“基本类型(如int,long等)”,非包装器类型(如Integer,Long等)只能用==和!=比较,没有equals()方法。

5、逻辑操作符(&&,||,!)操作只可应用于布尔值。使用逻辑操作符时,有可能出现一种“短路”现象,即逻辑表达式有可能一部份不必计算就知运算结果的。

 6、按位操作符用来操作整数基本类型中的单个“比特”(bit),即二进制位。但对于布尔型作为一种单比特值对待,只能执行按位(&,|,^)运算,不能执行按位~的操作,并且不会中途“短路”这是跟逻辑操作符不同的,结果也是布尔型数据。

7、如果对char,byte或者short类型的数值进行移位处理,哪么在移位进行之前,它们会被转换成int类型,并且得到的结果也是int类型的值。所以在进行>>>=运算是要特别小心,有可能得到的不是正确的结果。

8、java允许任何基本数据类型转换成别的基本数据类型,但布尔型除外,后者根本不允许进行任何类型的转换处理。在执行窄化转换时,总是对数字执行截尾,如果要得到四舍五入的结果,就需要使用java.lang.Math中的round()方法。

9、如果对基本数据类型执行算术运算或按位运算时,只要类型比int小(char,byte,short ),运算之前就会转成int,最终结果也是int类型。如果想把结果赋值给较小的类型,必须进行类型转换。通常,表达式中出现的最大的数据类型决定了表达式最终结果的数据类型。

分享到:
评论

相关推荐

    java 面试题 总结

    JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变...

    J2SE技术总结-Java学习精华教程-电子书

    本书内容非常全面,涵盖了《Java编程思想》、《Java学习笔记》等书籍所有知识要点,并结合作者自己经验总结而编写,内容丰富程度胜过一切书籍 众所周知,一般书籍为了销售需要,往往很少的知识点,却需要添加大量的...

    Scala详细总结(精辟版++)

    操作符 5 块表达式与赋值 5 控制结构 6 函数 8 类(class)和对象(object) 14 抽象类和抽象成员 17 继承与覆盖(override) 18 特质(trait) 19 显式类型转换 20 隐式转换、隐式参数 20 类型参数化 21 类型信息 22 集合 ...

    Visual C#2010 从入门到精通(Visual.C#.2010.Step.By.Step).完整去密码锁定版 I部分

    4.2.4 操作符的优先级和结合性总结 68 4.3 使用if语句来做出决策 68 4.3.1 理解if语句的语法 69 4.3.2 使用代码块来对语句进行分组 70 4.3.3 嵌套if语句 70 4.4 使用switch语句 75 4.4.1 理解switch语句的语法...

    Python核心编程第二版(ok)

     4.6.5 Python类型操作符和内建函数总结   4.7 类型工厂函数   4.8 标准类型的分类   4.8.1 存储模型   4.8.2 更新模型   4.8.3 访问模型   4.9 不支持的类型   4.10 练习   第5章 数字 ...

    Python核心编程第二版

     4.6.5 Python类型操作符和内建函数总结   4.7 类型工厂函数   4.8 标准类型的分类   4.8.1 存储模型   4.8.2 更新模型   4.8.3 访问模型   4.9 不支持的类型   4.10 练习   第5章 数字 ...

    Python 核心编程 第二版

     2.4 操作符   2.5 变量和赋值   2.6 数字   2.7 字符串   2.8 列表和元组   2.9 字典   2.10 代码块及缩进对齐   2.11 if语句   2.12 while循环   2.13 for循环和range()内建函数 ...

    springboot知识点整理

    2.7 配置文件占位符 30 2.8 Profile多环境支持 31 2.9 配置文件的加载位置 33 2.10 外部配置加载顺序 36 2.11 自动配置原理 37 2.12 @Conditional派生注解 41 3 Spring Boot与日志 42 3.1 日志框架分类和选择 42 3.2...

    精通正则表达式~~~

    自动的编辑操作... 53 处理邮件的小工具... 53 用环视功能为数值添加逗号... 59 Text-to-HTML转换... 67 回到单词重复问题... 77 第3章:正则表达式的特性和流派概览.... 83 在正则的世界中漫步... 85 正则...

    RED HAT LINUX 6大全

    本书全面系统地介绍了Red Hat Linux 6。全书共分为五个部分,包括35章和四个附录。第一部分为Red Hat Linux的介绍和安装;第二部分为服务配置;第三部分为系统管理;第四部分为Linux编程;第五部分为附录。本书内容...

    Visual C++ 2010入门经典(第5版)--源代码及课后练习答案

    4.3.2 new和delete操作符 168 4.3.3 为数组动态分配内存 169 4.3.4 多维数组的动态分配 171 4.4 使用引用 172 4.4.1 引用的概念 172 4.4.2 声明并初始化lvalue引用 172 4.4.3 声明并初始化rvalue引用 173 ...

    C#微软培训资料

    7.4 关系操作符和关系表达式.65 &lt;&lt;page 2&gt;&gt; page begin==================== 7.5 逻辑操作符和逻辑表达式.68 7.6 位 运 算 .69 7.7 其它特殊操作符 .72 7.8 小 结 .77 第八章 流 程 控 制 .79 8.1 ...

    XML实用大全----xml详细参考书

    比较全面的XML参考电子书!强列推荐。如下是目录: 第一部分 XML简介... 9 第1章 XML概览... 9 1.1 什么是XML. 10 1.1.1 XML是元标记语言... 10 1.1.2 XML描述的是结构和语义,而不是格式化... 10 1.2 为什么...

    sphinx中文语音训练手册

    a1、中文每个字的标准发音已经有一个较为全面的文件进行了标注 这个文件就是zh_broadcastnews_utf8.dic(下称这类文件为发音字典),在sphinx网站上可以下载,我们也包含了它。 下面是该文件的片断,它用类似拼音的...

    网管教程 从入门到精通软件篇.txt

    小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。  Bootcfg  bootcfg 命令启动配置和故障恢复(对于大多数计算机,即 boot.ini 文件)。  含有下列参数的 bootcfg 命令仅在...

    Visual C++ 2005入门经典--源代码及课后练习答案

    Ivor Horton还著有Beginning Visual C++ 6、Beginning C Programming和Beginning Java 2等多部入门级好书。 目录 封面 -18 前言 -14 目录 -9 第1章 使用Visual C++ 2005编程 1 1.1 .NET Framework 1 1.2 CLR 2...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

Global site tag (gtag.js) - Google Analytics