CodeGym /Java blog /Véletlen /Java kettős kulcsszó
John Squirrels
Szint
San Francisco

Java kettős kulcsszó

Megjelent a csoportban
A Java kettős kulcsszó, mint minden más nyelvben, egy lebegőpontos szám megjelenítésére szolgáló számítógépes formátumot jelöl, amely 64 bitet vagy 8 bájtot foglal el a memóriában. Ebben a cikkben a dupláról fogunk beszélni, és nézünk néhány példát.

Lebegőpontos és számítástechnika: egy rövid matematikai leírás

A törtszámok fix vagy lebegőpontosak. Az első opciót egy szabályos törtként ábrázolhatjuk, ahol a számláló (maga a szám) és a nevező (a léptékező tényezője) egész számok lesznek. Például a 2,7 szám 27 10-es skálázási tényezővel, 3,14 - 314 100-as tényezővel. Ez a megközelítés azonban számítási szempontból nem túl pontos, ezért gyakran alkalmaznak lebegőpontos ábrázolást. A számítástechnikában a lebegőpontos aritmetika a valós számok speciális aritmetikai reprezentációja, amely közelítésként támogatja a tartomány és a pontosság közötti kompromisszumot. A lebegőpontos számok Java nyelvben történő megjelenítésének fő formátumát floatnak nevezik. A neve lebegőpontból származik. A lebegés 32 bites, ebből 1 bit előjeles bit, 8 bit a kitevő és 23 bit a szignifikáns. Tartománya ±3. 40282347E + 38F azaz 6-7 számjegy. A double név a double float szóból származik. AA double type kétszer akkora, mint a float : 8 bájt a 4-gyel szemben. Dupla pontosságú valós számnak is nevezik. A kettős szám számára fenntartott 64 bitből 1 előjeles bit, 11 bit a kitevő, 52 bit pedig a szignifikancia. A Java kettős tört ±1,79769313486231570E + 308 tartományban tárolja a számokat, azaz 15-16 jelentős számjegyet. A Double pontosabb formátum. Tehát ha nagyon nagy számokat kell tárolnia, akkor jó ötlet a duplázás , mint a float . Egyébként az olyan matematikai módszerek, mint az sqrt, sin vagy cos és még sokan mások, dupla értékeket adnak vissza. A dupla pontosságért azonban a memóriával kell fizetnie.

Dupla változó létrehozása

A dupla típus valós számok tárolására szolgál. Ahhoz, hogy a kódban olyan változót hozzon létre, amely képes lesz valós számokat tárolni, a következő parancsot kell használnia:

double name;
Ahol a név a változó neve.

double myPrice;  //here we create a variable called myPrice
double action; //and here -- action. 
A gyorsírással több double típusú változót is létrehozhat :

double name1, name2, name3;

Java kettős kulcsszó Példák

Nézzünk néhány példát a Java kettős kulcsszó használatára változó létrehozásához.

double myPrice = 5.0;
double height = 180;
double x = 7.1, y = 3.0;
Itt a myPrice változóban 5,0, a magasság változóban 180, x -ben 7,1, y -ban pedig 3,0 értéket adunk .

Dupla egész számként

A Java nyelvben a dupla változókhoz valós és egész számokat is lehet rendelni. Egész számok hozzárendelésekor egyszerűen valós számokká konvertálják őket. Bár néha enyhe pontosságvesztés lehetséges.

double height = 180;
int k = 2; 
int i = 5; 
double myDouble = k*i;
Valójában a magasság változó a 180.0 számot tárolja, a myDouble változó pedig a 10.0 számot.

Kettős és egész interakció

Ezenkívül, ha egy egész és egy valós szám szerepel valamilyen kifejezésben, akkor az egész szám először valós számmá alakul, és csak ezután lép kölcsönhatásba egy másik valós számmal.

public class DoubleDemo {
   public static void main(String[] args) {
       int k = 2;
       double myDouble1 = 5;
       double myDouble = k*7.0;
       System.out.println(myDouble1);
       System.out.println(k*myDouble1);
       System.out.println(myDouble);
   }
}
Ebben a példában a kimenet a következő lesz:
5,0 10,0 14,0
Annak ellenére, hogy a myDouble1 szám 5, és nem 5.0, a Java ezt a számot duplának tekinti , tehát valójában 5.0-nak tűnik. Ha az int-t és a double-t megszorozzuk, mindig duplát kapunk , még akkor is, ha ez a szám egy egész szám. Az int típusú változókhoz double típusú változókat rendelhetünk . Ehhez explicit típuskonverziót kell végrehajtania. Természetesen a tört részt eldobjuk, a számot kisebb egész számra csonkoljuk.

public class DoubleDemo {
   public static void main(String[] args) {
       double x = 57.789;
       int almostX;
       almostX = (int)x;
       System.out.println(almostX);
   }
}
A kimenet a következő:
57
Végül beszéljünk a megosztottságról. Ez a legérdekesebb. Lehet, hogy már találkoztál azzal, hogy ha két egész számot osztasz, akkor az osztás eredményeként egy egész számot kapunk, még akkor is, ha nem oszthatók egymással egyenletesen:

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7/2;
       System.out.println(myDouble);
   }
}
Az eredmény:
3.0
Ennek az az oka, hogy a Java gép először két egész számot oszt el (és 3-at kap), majd ezt az értéket egy double típusú változóban tárolja, és ennek eredményeként 3.0-t kap. Ahhoz, hogy ne egész számot kapjunk, hanem szokásos osztást, csalnunk kell. Például írja be az egyik számot valós számként (ekkor a teljes kifejezés automatikusan valóssá alakul). Ha egész típusú változókkal dolgozunk, akkor ezek 1,0-val szorozhatók. Ez nem változtatja meg az értéket, de megváltoztatja a változó típusát int -ről double -ra .

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7.0/2;
       int x = 5;
       int y = 2;
       System.out.println(myDouble);
       System.out.println(x*1.0/y);
   }
}
A kimenet a következő:
3,5 2,5
Hozzászólások
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION