javadouble轉int
『壹』 java 為何不能double強制轉換int
Double 是 double的封裝類。
Double s = 60.2; s是一個對象,所以不能和基本類型的int相互轉換。應該改成
double s = 60.2;
int x = (int) s;
『貳』 java double轉int出錯
把double
value
=
result.size()/term;
改成double
value
=
(double)result.size()/term;
兩個int值相處得到的值還是int,得把其中一個轉換成double類型就可以了
『叄』 java中怎樣將一個double型數組轉化成int型數組
1、可以藉助強制類型轉換及循環來完成轉化。比如double型數組darray轉換為int型數組iarray的代碼如下:
double[]darray=newdouble[10];//darray數組聲明
//...//darray數組初始化省略
intiarray=newint[darray.length];//聲明int數組iarray,長度同darray的長度
for(inti=0;i<darray.length;i++){
iarray[i]=(int)darray[i];//位置1
}
2、先生成一個double的外覆型Double,再用Double的intValue()得到int,這里代碼部分大部分相同,只需將位置1的代碼改為
iarray[i]=(newDouble(darray[i])).intValue();
3、當然也可以先將double型數據先轉換為String類型,然後再轉換為int類型,如位置1代碼修改如下:
Strings1=String.valueOf(darray[i]);
Strings2=s1.substring(0,s1.indexOf("."));
iarray[i]=Integer.parseInt(s2);
『肆』 java 中double型轉化成int型
public int stringToInt(String string){
int j = 0;
String str = string.substring(0, string.indexOf(".")) + string.substring(string.indexOf(".") + 1);
int intgeo = Integer.parseInt(str);
return intgeo;
}
(4)javadouble轉int擴展閱讀:
關於Java中數據類型及其之間的轉換
一、數據類型之間的轉轉換分為以下幾種情況:
1、低級到高級的自動類型轉換;
2、高級到低級的強制類型轉換(會導致溢出或丟失精度);
3、基本類型向類類型轉換;
4、基本類型向字元串的轉換;
5、類類型向字元串轉換
二、轉換規則
1、只要兩個操作數中有一個是double類型的,另一個將會被轉換成double類型,並且結果也是double類型。
2、只要兩個操作數中有一個是float類型的,另一個將會被轉換成float類型,並且結果也是float類型。
3、只要兩個操作數中有一個是long類型的,另一個將會被轉換成long類型,並且結果也是long類型
4、兩個操作數(包括byte、short、int、char)都將會被轉換成int類型,並且結果也是int類型。
如果低級類型為char型,向高級類型(整型)轉換時,會轉換為對應ASCII碼值,再做其它類型的自動轉換。對於byte,short,char三種類型而言,他們是平級的,因此不能相互自動轉換,可以使用下述的強制類型轉換。
『伍』 java中double怎麼裝換成int
這個是縮小轉換,必須強制進行。用上面的就可以了。還有一個方法,用Double對象,不過有點多此一舉了。
double s=5.0d;
int i=0;
Double d_s=new Double(s);
i=d_s.intValue();
『陸』 java中double型能轉int型嗎
可以的 但是double是浮點類型 比float浮點類型精度更大 int是整型數據 如果double型轉成int類型會導致精度損失問題
例如double x=3.14; int y=(int)x; 那麼y=3 我們稱之為精度損失
『柒』 java中double型能轉int型嗎
int x=(int) y
y是double類型,但是會損失精度,可以使用四捨五入得到最接近的整數.
int x=(int) math.round(y)
另外,你覺得四捨五入之後就是整數了,不需要用到(int)強制轉換是錯誤的.
因為round會轉換之後返回的結果的long類型,所以還是需要強制轉換為(int)類型.
『捌』 java中為什麼運算值為double可以直接賦值int變數
java 中不是說不能整除得到的結果就是 double, 這是不存在的
java 中所有四則運算的結果類型只和參與運算的變數類型有關, 和計算結果是無關的
兩個 int 類型的參數進行四則運算, 結果一定是 int
不同類型的變數進行四則運算, 計算結果的數據類型有參與運算參數中類型範圍較大的決定
『玖』 java中如何把一個double數轉換成整型數
直接強行轉換就行,例如
int i = (int)23.23;
當然了這么做會有精度丟失
java的Double封裝類中也提供有方法取Double的int值其實此方法的本質還是上面的強轉
例如:
Double d = new Double(23.23);
int doubleToInt = d.intValue();