本文介紹了為什么int=int*Double會給出錯誤,而int*=Double不會(在Java中)?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
為什么INT=INT*DOUBLE形式的賦值會出錯,而INT*=Double格式的賦值不會出錯(在Java中)?
示例:
public class TestEmp {
public static void main(String[] args) {
double e = 10;
int r = 1;
r *= e;
r = r * e;
System.out.println("De uitkomst van r :" + r);
}
}
r *= e
被接受,而r = r * e
不被接受。為什么?
推薦答案
r = r * e
會顯示錯誤,因?yàn)?code>r * e的結(jié)果是double
,因此當(dāng)您將其存儲在int
中時,會損失精度。
r *= e
不會給您錯誤,因?yàn)樗?code>r = (int)(r * e)(source)的語法糖。
這篇關(guān)于為什么int=int*Double會給出錯誤,而int*=Double不會(在Java中)?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,