Java SE ---算术运算符

 算术运算符:(加)+,(减)-,(乘)*,(除)/,(求余)%,自增自减

一,算数运算符:
当有若干个变量参与运算时,结果类型取决于这些变量中表示范围最大的那个变量类型。
如果参加运算的变量中有整型int,有双精度浮点型double,有短整型short,那么最后的结果类型就是double。

这里主要说说除法和取模求余数。
除法:
例子1:
int a = 1;
int b = 2;
System.out.println(a / b);   //结果是0 如果按照数学意义来看结果应该是0.5,但是a和b都是int的,那么结果也是int型的,0.5是小数。若a,b两个变量无法整除时,java环境根据ab都是int型,结果也必须是int的,它会把结果的小数点后面的那部分全部舍掉,不是四舍五入,所以这里的a/b结果是0。
例子2:         double i = 1;
int j = 2;
int k = i / j;
System.out.println(k);  // 无法通过编译
 这个编译会报错。i和j参与运算,结果的类型应该是double类型的,double型的数是不能赋值给int型的k的,所以报损失精度的错。   例子3:在例子2的基础上,把变量k改成double型
double i = 1;
int j = 2;
double k = i / j;
System.out.println(k);  // 结果是0.5
 这个编译会报错。i和j参与运算,结果的类型应该是double类型的,然后赋值给double型的k,通过编译,结果0.5。    例子4:在例子1的基础上
int a = 1;
int b = 2;         int c =  a / b;
double j = a / b;
double k = (double)a / b;         System.out.println(c);   //结果是0 
System.out.println(j);   //结果是0.0
System.out.println(k);  //结果是0.5
 

取模%(求余) 取模的结果符号,永远与被除数(就是%前面的数)的符号相同。如a%b的结果符号跟a一致 
除了布尔类型不能取模外,其他的都可以取模,具体例子参考下面:

 

 1,字符char型取模:a~z的ASCII码值是97~122,A~Z的ASCII码值是65~90

 

 

2,int整型

3.double双精度型

posted @ 2013-11-22 11:39  五星村小黄  阅读(247)  评论(0编辑  收藏  举报