① java中int跟float的運算結果是float類型還是double類型
向參與運算的操作數的類型中的最高精度轉型,所以答案是float類型。如果有小數參與運算,則為double類型,因為java默認小數直接量是double類型的。如:
int n=100;
float f=1.1f;
則n+f的結果是float類型的,而6.0+n+f的結果是double類型的。
② Java 輸入String值10。 將這個String型變數轉換為int型,再將轉換後的int型變數轉換為float型
String ss = "123"; int a = Integer.parseInt(ss); //方法一(將字元串參數作為有符號的十進制整數進行解析。) int b = Integer.valueOf(ss); //方法二(返回保存指定的 String 的值的 Integer 對象。)
③ Java中幾種常用數據類型之間轉換的方法
下面給你例舉10種Java中幾種常用的數據類型之間轉換方法:
1. short-->int 轉換
exp: short shortvar=0;
int intvar=0;
shortvar= (short) intvar
2. int-->short 轉換
exp: short shortvar=0;
int intvar=0;
intvar=shortvar;
3. int->String 轉換
exp: int intvar=1;
String stringvar;
Stringvar=string.valueOf (intvar);
4. float->String 轉換
exp: float floatvar=9.99f;
String stringvar;
Stringvar=String.valueOf (floatvar);
5. double->String 轉換
exp double doublevar=99999999.99;
String stringvar;
Stringvar=String.valueOf (doublevar);
6. char->String 轉換
exp char charvar=』a』;
String stringvar;
Stringvar=String.valueOf (charvar);
7 String->int、float、long、double 轉換
Exp String intstring=」10」;
String floatstring=」10.1f」;
String longstring=」99999999」;
String doubleString=」99999999.9」;
Int I=Integer.parseInt (intstring);
Float f= Integer.parseInt (floatstring);
Long lo=long. parseInt (longstring);
Double d=double. parseInt (doublestring);
8 String->byte、short 轉換
Exp String s=」0」;
Byte b=Integer.intValue(s);
Short sh=Integer.intValue(s);
9 String->char 轉換
Exp String s=」abc」;
Char a=s.charAt(0);
返回字元a
10 String-->boolean 轉換
String s=」true」;
Boolean flag=Boolean.valueOf (「s」);
④ java int轉float為什麼不報錯
byte<short<int<long
char<int
int<float<double
低精度往高精度轉換是不會報錯的
就好比小盒子往大盒子里放東西,即使填不滿,就空著
但是大盒子是無法放進小盒子里的
⑤ int 轉 float 為什麼有時會丟失精度
int是整型,用來表示整數,其值是精確值。
float是浮點型,用來表示實數,其值是近似值。
所以當int轉換為float時,是由准確值變成了近似值,所以會丟失精度。
比如int 的1000,轉換為浮點型時,可能會被存成1000.00000000001,用來計算或者輸出時看不出區別,實際上是已經有變化了。
在32位和64位的編譯器中,int和float都是佔四位元組。
int可以表示範圍為-2147483648~2147483647。
float可以表示-3.40E+38 ~ +3.40E+38。
從這個角度上看,float可以表示的范圍比int的大太多了,對於比較大的數值,自然就會差距越大。
比如下面的代碼
intmain()
{
inta=2147483000;
floatb=a;
printf("%f ",b);
return0;
}
在gcc下輸出
2147483008.000000
與原本值已經相差了8。
⑥ Java中int轉float可能會損失精度,但是int轉double為什麼也會損失精度
高向低轉換,因為涉及到位數變少,所以可能會丟失數字,產生誤差,所以一般不讓轉化,確實需要轉化的時候就如你所說格式,進行強制類型轉換
反過來,低向高轉化,則完全不用考慮數據產生誤差問題,可以直接使用的。比如直接將a賦給一個double變數,double
c=a。
往面向對象來說,double就相當於int的抽象
⑦ Java中將整型轉換成浮點型或者其他類似的基本型轉換語句怎麼寫
一般情況,整型轉換為浮點型,或者浮點型轉換成整型可以直接進行強制類型轉換啊。比如: int a = 9; float b = (float)a; //則輸出 a 的結果是 a = 9, 輸出b的結果是 b = 9.0 double c = 1.1234; int d = (int)c; //則輸出 c 的結果是 c = 1.1234, 輸出d的結果是 d = 1 特殊情況:比如說從一個 textBox裡面讀出的數據轉換成浮點型或者整型的方法比如: String str = "1.2345"; double dou = Double.parseDouble(str); 或者: String str = "22222222"; int ddd = Integer.paseInteger(str); 以上兩種方法是常用的轉換類型的方法了。
⑧ Java語言的數據類型,int和float能自動轉換嗎都是4位元組,擱一塊兒轉換成啥類型
int和float能自動轉換的,運算會先自動轉換為兩個float,然後進行運算(如果int的有效數字較多,可能會丟失部分數據),最後的結果只能保證7位有效數據。
⑨ 定義的時候是int,要怎麼轉換成float
1、創建java類,TestFloat