黑马程序员技术交流社区

标题: 关于运算符的小结 [打印本页]

作者: ningbo_1115    时间: 2015-10-16 20:55
标题: 关于运算符的小结
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
算术运算符:+  -  + - * / % ++ -- +
注意:   (1) /:   int i = 12;  i = i / 5;
             (2) %:最后的符号只跟被模数相同
             (3)前++:先+1,后运算     后++:先运算,后+1
             (4)+:String字符串与其他数据类型只能做连接运算,且结果为String类型。sysout('*' + '\t' + '*'); vs  sysout("*" + '\t' + '*');
                     
赋值运算符:=    +=   -=  *=    /=   %=
int i= 12;
i  = i * 5;
i *= 5;//与上一行代码同样的意思
【特别注意】
short s = 10;
s = s + 5;//报编译的异常
s = (short)(s + 5);
s += 5;//s = s + 5,但是结果不会改变s的数据类型。

比较运算符(关系运算符):==  >   <  >=   <=    instanceof  
【特别注意】区分==  与 =  区别。
进行比较运算操作以后,返回一个boolean类型的值
4>=3  表达的是4 > 3或者 4 = 3.结果是true。

if(i > 1 && i < 10){  }   
不能写为:if(1 < i < 10){}

逻辑运算符(运算符的两端是boolean值)
&   &&  |  ||  ^ !
【注意】区分 &  与 && 的区别,以及 |  与 || 的区别
  我们使用的时候,选择&& , ||

位运算符(两端是数值类型的数据)
<<   >>    >>>  &  |   ^  ~
【例子】1.如何交换m = 12和n = 5的值
             2.将60转换为十六进制输出。
三元运算符
(条件表达式)? 表达式1 : 表达式2;
1)既然是运算符,一定会返回一个结果,并且结果的数据类型与表达式1,2的类型一致
2)表达式1与表达式2 的数据类型一致。
3)使用三元运算符的,一定可以转换为if-else。反之不一定成立。
例子:获取两个数的较大值;获取三个数的最大值。


作者: C威    时间: 2015-10-16 22:23
比较基础的东西!!!!!!!!!!
作者: orgcheng    时间: 2015-10-16 22:24
不错,谢谢分享
作者: tuyrt7    时间: 2015-10-16 22:57
还是比较适合我这种基础渣渣。。有点收获。
作者: Meitan    时间: 2015-10-16 23:17
说的好啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2