Röviden az int és a double típusokról Java nyelven
Az int egy primitív Java típus egész számokhoz (például -25, 0, 1828182845). Ez a típus 32 bitet használ egy változó érték tárolására. Az int számok tartománya -231-től 231-ig - 1 vagy, ami megegyezik, -2147483648-tól 2147483647-ig. A Java kettős típusa lebegőpontos számokat jelöl, 64 bitet foglal le a memóriában, és a típus tartománya -1,7 *10308–1,7*10308. Ha az int tartományát ugyanabban a formában ábrázolja, akkor -2*109 до +2*109 lesz. Szerintem nyilvánvaló, hogy tetszőleges számú int típus belefér a dupla primitív típusok memóriájába. Ezenkívül bármely egész szám ábrázolható törtszámként nulla törtrésszel. Matematikai szempontból kétségtelen, hogy: 5 = 5,0 or -57,0 = -57.Konvertálás duplává
Java szempontból a double és int típusok is kompatibilisek. Mivel az int duplává konvertálása a nagyobbak kisebbre öntését jelenti, ez a fajta konverzió implicit típusú kis- és nagybetűs írást vagy szélesítést hív. Az int-t automatikusan double-re konvertálhatja Java-ban, ha az int értéket egy double változóhoz rendeli. Nézzünk egy kódpéldát a typecastingra:
public class intToDouble {
public static void main(String[] args) {
int myInt1 = 10;
int myInt2 = 2147483647;
double myDouble1, myDouble2;
System.out.println("my integers are: " + myInt1 + ", " + myInt2);
myDouble1 = myInt1;
myDouble2 = myInt2;
System.out.println("after typecasting/widening to double: " + myDouble1 + ", " + myDouble2);
}
}
Íme a kimenet:
az én egész számom: 10, 2147483647 a gépelés/duplázásra történő szélesítés után: 10.0, 2.147483647E9
Megjegyzések: Az E9 itt 109-et jelent, ezt tudományos jelölésnek hívják. Vegye figyelembe azt is, hogy a dupla számokat általában ponttal írják, amely elválasztja a tört részt. ha deklarálunk egy double változót és értéket adunk bele, akkor ezt nem kell megtenni, de a kimenetben a dupla számnak mindig lesz tört része, még akkor is, ha nulla.
Konvertálás int duplává semleges numerikus művelettel
Ezenkívül a Java különböző típusú változóival végzett összes numerikus művelet típusbővítéshez vezet. Vagyis a művelet eredménye szélesebb típusú lesz. Ezért az int-ből duplává konvertálásához használhatja a „semleges” műveletet. Például szorozzon meg egy int 1,0-val (dupla szám), vagy adjon hozzá 0,0-t egy inthez. Íme egy példa az ilyen típusú írásmódra:
public class intToDouble {
public static void main(String[] args) {
double a = 1; //you can also write 1.0 here. If you print it out it will be 1.0
int b = 5, x = 7;
System.out.println(x + 0.0);
System.out.println(a*b);
}
}
A kimenet a következő:
7,0 5,0
Egyébként nem csak int, hanem minden numerikus primitív típust is át lehet konvertálni duplává. Íme a lehetséges átalakítás sorrendje a legkisebbről a legnagyobbra:
Byte -> Short -> Char -> Int -> Long -> Float -> Double
További olvasnivalók: |
---|
GO TO FULL VERSION