Java中的乘法運算符既可以用于整型數據類型int,也可以用于浮點型數據類型double。
int a = 2; int b = 3; int c = a * b; //結果為6,即2*3
當使用int類型相乘時,結果也一定為int類型。如果兩個數相乘后超出int類型范圍,則會發生數據溢出。
int d = 2000000000; int e = 3; int f = d * e; //結果為-294967296,發生了數據溢出
如果要避免數據溢出問題,可以將其中一個操作數轉換為更大的數據類型,如將其中一個數強制轉換為long類型。
int d = 2000000000; int e = 3; long g = (long)d * e; //結果為6000000000,避免了數據溢出問題
當使用double類型相乘時,結果也一定為double類型。
double x = 2.5; double y = 3.5; double z = x * y; //結果為8.75,即2.5*3.5
需要注意的是,計算機在進行浮點數運算時,可能存在精度誤差,在特定情況下可能會導致計算錯誤。