Java算术运算符

算术运算符他就是数学中的 + - * / 除了这些之外Java中还有一种算术运算符:% 取余(取膜) ,% 他可以叫取余也可以说是取膜两种叫法都可以。

分类

双目运算符(加)+,(减)-,(乘)*,(除)/,(求余)%

1. 这些运算符的运算对象可以是byte、short、int、long、float、double、char类型,其中char类型在运算时被自动转为int型。例:

public class Test1{
	public static void main(String arg[]){
		int A = 10;
		char B = 'B';
		System.out.println(A+B);
	}
}

结果: 76

2. 在Java中,整数被0除或对0取余属于非法运算,将抛出AtrthemticExcerption。

3. 求余运算(%)的两个运算对象不但可以是整数,也可以是浮点类型;不但可以是正整数,也可以是负整数,其计算结果的符号与求余运算福左侧的运算对象符号一致。例:

public class Test2{
	public static void main(String arg[]){
		float A = 10.01f;
		float B = 2.33f;
		System.out.println(A%B);
	}
}

结果:0.6900053

4. 如果参与除法运算的两个运算对象都属于整型,则运算为整除运算,若希望得到小数部分的商值则需要对其中一个运算对象的类型作强制转换。例:

public class Test3{
	public static void main(String arg[]){
		int A = 10;
		int B = 3;
		System.out.println(A/(float)B);//强制转换
	}
}

结果:3.3333333

5. 运算符“+”的运算对象可以使String,它的操作含义是将两个字符串连接。如果其中一个对象为其他类型,则会自动将这个运算对象转换成字符串,然后再进行字符串的连接。例:

public class Test4{
	public static void main(String arg[]){
		System.out.println("20+12/3="+(20+12/3));
	}
}
	

结果:20+12/3=24

单目运算符+(正),-(负),++(自增),--(自减)

自增自减这个东西,老是容易混淆,其实我们在编程时大可不必用这些容易混淆的东西。不过还是来区分一下。简单的区分方法就是,看++、--在前面还是在后面,在前面则先自增、自减,在后面则先参与运算,再自增自减。例子如下:

假设x为100
(x++)-5*6这个表达式的值为70,x值为101(x参与运算后再自增)
++x)-5*6这个表达式的值为71,x的值为101(x子增厚再参与运算)
自增自减虽然简洁,却会减少程序的可读性,因此还是少用为妙。

实例

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


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

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

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

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

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

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


版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。