设为首页 加入收藏

TOP

Java运算符之算术运算符
2014-11-19 06:17:53 来源: 作者: 【 】 浏览:12
Tags:Java 运算 符之 算术

  序号 运算符 含义


  1 + 加法


  2 - 减法


  3 * 乘法


  4 / 除法


  5 % 模运算(取余运算)


  6 ++ 递增运算


  7 -- 递减运算


  Java的算术运算符分为一元运算符和二元运算符。一元运算符只有一个操作数;二元运算符有两个操作数,运算符位于两个操作数之间。算术运算符的操作数必须是数值类型。


  (1)一元运算符


  一元运算符有:正(+)、负(-)、自增(++)和自减(--)4个。


  自增和自减运算符只允许用于数值类型的变量,不允许用于表达式中。该运算符既可放在变量之前(如++i),也可放在变量之后(如i++),两者的差别是:如果放在变量之前(如++i),则变量值先加1或减1,然后进行其他相应的操作(主要是赋值操作);如果放在变量之后(如i++),则先进行其他相应的操作,然后再进行变量值加1或减1。


  例如:


  int i=6,j,k,m,n;


  j = +i; //取原值,即j=6


  k = -i; //取负值,即k=-6


  m = i++; //先m=i,再i=i+1,即m=6,i=7


  m = ++i; //先i=i+1,再m=i,即i=7,m=7


  n = j--; //先n=j,再j=j-1,即n=6,j=5


  n = --j; //先j=j-1,再n=j,即j=5,n=5


  在书写时还要注意的是:一元运算符与其前后的操作数之间不允许有空格,否则编译时会出错。


  (2)二元运算符


  二元运算符有:加(+)、减(-)、乘(*)、除(/)、取模(%)。其中+、-、*、/完成加、减、乘、除四则运算,%是求两个操作数相除后的余数。


  %求余操作举例:


  a % b = a - (a / b) * b


  取余运算符既可用于两个操作数都是整数的情况,也可用于两个操作数都是浮点数(或一个操作数是浮点数)的情况。当两个操作数都是浮点数时,例如7.6 % 2.9时,计算结果为:7.6 - 2 * 2.9 = 1.8。


  当两个操作数都是int类型数时,a%b的计算公式为:


  a % b = a - (int)(a / b) * b


  当两个操作数都是long类型(或其他整数类型)数时,a%b的计算公式可以类推。


  当参加二元运算的两个操作数的数据类型不同时,所得结果的数据类型与精度较高(或位数更长)的那种数据类型一致。


  例如:


  7 / 3 //整除,运算结果为2


  7.0 / 3 //除法,运算结果为2.33333,即结果与精度较高的类型一致


  7 % 3 //取余,运算结果为1


  7.0 % 3 //取余,运算结果为1.0


  -7 % 3 //取余,运算结果为-1,即运算结果的符号与左操作数相同


  7 % -3 //取余,运算结果为1,即运算结果的符号与左操作数相同


  注:JAVA运算符的优先级


  运算符的优先级决定了多个运算符在一个表达式中运算的顺序,其中最简单的是乘除的优先级大于加减。而一旦表达式比较复杂时,程序员经常会忘记其他优先级规则,所以应该用括号明确规定计算顺序。


  例:int a = 100 - 12.5 * 3 + 5 / 2 + 2 ;


  这个表达式的顺序如果不加打括号,任何人都会先计算乘除,然后才计算加减。而只要加上括号后,这个表达式就有了个不同的含义。比如:int a = (100 12.5) * 3 + 5 / (2 + 2) 。


  编辑特别推荐:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇request与response转向的区别 下一篇Hibernate自动根据映射创建数据库..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: