运算符之一:算术运算符
运算符:+ - + - / % (前)++ (后)++ (前)-- (后)-- +
public class AriTest {
public static void main(String[] args) {
//出号:/
int num1=12;
int num2=5;
int result1=num1/num2;
System.out.println(result1);//2
int result2=num1/num2*num2;
System.out.println(result2);//10
double result3=num1/num2;
System.out.println(result3);//2.0
double result4=num1/num2+0.0;//2.0
double result5=num1/(num2+0.0);//2.4
double result6=(num1+0.0)/num2;//2.4
double result7=(double)num1/num2;//2.4//[(double)num1]先运算,先转换成double型
double result8=(double)(num1/num2);//2.0//[(num1/num2)]先运算
System.out.println(result4);
System.out.println(result5);
System.out.println(result6);
System.out.println(result7);
System.out.println(result8+"\n");
//%:取余运算
//结果的符号与被模数的符号相同,急和“分子”相同
//开发中,经常使用%来判断是否被除尽的情况。
int m1=12;
int n1=5;
System.out.println("m1%n1="+m1%n1);//2
int m2=-12;
int n2=5;
System.out.println("m2%n2="+m2%n2);//-2
int m3=12;
int n3=-5;
System.out.println("m3%n3="+m3%n3);//2
int m4=-12;
int n4=-5;
System.out.println("m4%n4="+m4%n4+"\n");//-2
//(前)++
//(后)++
int a1=10;
int b1=++a1;//自增一,先加一后赋值
System.out.println("a1="+a1+",b1="+b1);
int a2=10;
int b2=a2++;//自增一,先赋值后加一
System.out.println("a2="+a2+",b2="+b2);
//自增也可以换成一个式子:a=a+1,相当于自己给自己增值然后赋给自己
//先写先加,后写后加
a1++;
System.out.println(a1);
//注意点:
short s1=10;
//s1=s1+1;//编译失败
s1++;//可
System.out.println("s1="+s1);
s1=(short)(s1+1);//自增一比这种写法的执行效率更高
System.out.println("s1="+s1+"\n");
//自增一不会改变本身变量的数据类型
//问题:
byte by1=127;
by1++;
System.out.println("by1="+by1+"\n");//-128,依旧不会改变变量的数据类型
//(前)--:先子建1,后运算
//(后)--:先运算,后自减1
int a4 = 10;
int b4 = --a4;
System.out.println("a4="+a4+",b4="+b4);
int a5 = 10;
int b5 = a5--;
System.out.println("a5="+a5+",b5="+b5);
}
}
输出:
2
10
2.0
2.0
2.4
2.4
2.4
2.0
m1%n1=2
m2%n2=-2
m3%n3=2
m4%n4=-2
a1=11,b1=11
a2=11,b2=10
12
s1=11
s1=12
by1=-128
a4=9,b4=9
a5=9,b5=10