【Java开发】聊聊 算数运算符中的 "/" , "%" , "++"
🔷一起聊聊 Java 中算数运算符中的 "/" , "%" , "++"
public class ArithmeticOperator {
public static void main(String[] args) {
// 演示算术运算符的使用
System.out.println(10 / 4);//从数学角度来看 结果是2.5,在java 中是2(两个都是整数类型(int),最后结果也是整数)
/*
1. 数据类型判定
在 10 / 4 这个表达式里,10 和 4 均为整数类型(int)的字面量。在 Java 中,当两个操作数都是整数类型时,执行的是整数除法。
2. 整数除法规则
整数除法会舍去小数部分,仅保留整数部分。也就是说,它会对计算结果进行向下取整操作。对于 10 / 4 ,其数学计算结果为 2.5,但由于是整数除法,小数部分 .5 会被舍去,最终结果就是 2。
*/
System.out.println(10.0 / 4); //10.0 在java 中默认是double 类型,精度有所提高,所以结果为2.5
System.out.println("--------------"); //方便观察结果
System.out.println(10.00 / 4); // 结果还是2.5 ,和小数点后面几位没有关系,若结果需要保留小数点后几位,需要使用相关的类和 方法进行处理。
//double d = 10 / 4;
// System.out.println(d); // 2.0 // 在 java 中,10 / 4 = 2, 2=> double ->2.0
//double c = 10.0 / 4;
//System.out.println(c);// 2.5
// % 取模(取余)
System.out.println(10 % 3); //1
System.out.println(-10 % 3);// -1 重点看解释
//在java 中 %的本质 看一个公式:a % b = a - a / b * b
//-10 % 3 => -10 - (-10) / 3 * 3 =-10 + 9 = -1
System.out.println(10 % -3); // 1
// 10 % -3 => 10 - 10 / (-3) * (-3)=10 - (-3) * (-3) = 10 - 9 = 1
System.out.println(-10 % -3); // -1
// -10 % -3 => -10 - (-10) / (-3) * (-3) =10 - 3 * (-3)=-10- (-9)= -10 + 9 =-1
//++ 的使用
//
int i = 10;
i++; //自增 等价于 i = i + 1; => i = 11
++i; //自增 等价于 i = i + 1; => i = 12
/*
作为独立的语句使用,前++ 和后++ 完全等价于 i=i+1
*/
System.out.println("i=" + i); // 12
/*
作为表达式 使用:
前++ :++i 先自增后赋值
后++ :i++ 先赋值后自增
*/
int j = 8;
//int k = ++j; //其实等价于 j= j+1 k=j;
//System.out.println("k=" + k + "j=" + j); //输出两个9 ,k=9j=9
int k = j++; //其实等价于 k=j; j=j+1;
System.out.println("k=" + k + "j=" + j);// 输出结果为:k=8j=9
}
}
本文来自博客园,作者:一念6,转载请注明原文链接:https://www.cnblogs.com/zeng666/p/18786985

浙公网安备 33010602011771号