JAVA 算术运算符
运算符是一种特殊的符号 用以表示数据的运算 赋值和比较等
JAVA 层面的
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
- 三元运算符
注意 常见的运算符 要会使用 用多了就记住了 一个字 敲
算术运算符
-
-
- / % ++ – +
后面的加是 代表 字符串的连接
计算机中除法是/ 但是结果得到的不是我们生活中所理解的除法计算的
而是前面的整数
% 这个运算符代表的是 取模 (取余)
简单来说看余数 用奇数和偶数进行讲解
奇数代表除2除不开
偶数代表除2能除开 余数为0
- / % ++ – +
-
int number3 = 10;
int number4 = 5;
System.out.println("number3%number4= "+ number3%number4);
结果:10除5 的余数为0
++ – 分为前++ 和后++ 前-- 后-- 计算的结果是一样的 但是他的计算顺序不一样 慢慢理解
看下面的图
加法 和减法运算 就不演示了
下面是除法的运算代码演示
除法
public static void main(String[] args)
{
int number1 = 12;
int number2 = 5;
int result = number1/number2;
System.out.println(result);
}
运行结果
结果是 2
12/5 = 2.4 这是正常生活中我们所认为的除法运算
为什么出现了 2 后面的0.4 给省略了 被计算机吃了么 哈哈
int 的计算结果还是int 所以 后面的0.4 小数给省略了
下面我们为了要精确的2.4 应该怎么计算呢?
先设想下 用double进行接收 除法后的结果
public static void main(String[] args)
{
int number1 = 12;
int number2 = 5;
int result = number1/number2;
System.out.println(result);
int result2 = number1/number2*number2;
System.out.println(result2);
double d1 = number1/number2;
System.out.println(d1);
}
运行结果如下
解决方案是:把两个数 其中一个换位double类型
进行强制类型转换
byte short int long float double
public static void main(String[] args)
{
int number1 = 12;
int number2 = 5;
int result = number1/number2;
System.out.println(result);//2
int result2 = number1/number2*number2;
System.out.println(result2);//10
double d1 = number1/number2;
System.out.println(d1);//2.0
double result3 = (double)number1/number2;
System.out.println(result3);
}
运行结果
下面看下 正负数之间的取模运算有什么规律
取模(取余)
int number3 = 12;//被模数
int number4 = 5;//模数
System.out.println("number3%number4= "+ number3%number4);
int number5 = -12;
int number6 = 5;
System.out.println("number5%number6= "+ number5%number6);
int number7 = 12;
int number8 = -5;
System.out.println("number7%number8= "+ number7%number8);
int number9 = -12;
int number10 =-5;
System.out.println("number9%number10= "+ number9%number10);
前面的数来决定 结果的正负
12%5 = 2
-12%5 =-2
12%-5 = 2
-12%-5 ==-2