CodeGym /Blog Java /Aleatoriu /Cuvânt cheie Java dublu
John Squirrels
Nivel
San Francisco

Cuvânt cheie Java dublu

Publicat în grup
Cuvântul cheie Java dublu , ca în orice altă limbă, indică un format de computer pentru reprezentarea unui număr în virgulă mobilă, care ocupă 64 de biți sau 8 octeți în memorie. În acest articol vom vorbi despre dublu și vom privi câteva exemple.

Virgulă mobilă și calcul: o scurtă descriere matematică

Numerele fracționale sunt fie fixe, fie în virgulă mobilă. Prima opțiune poate fi reprezentată ca o fracție obișnuită, unde numărătorul (numărul însuși) și numitorul (factorul său de scalare) vor fi numere întregi. De exemplu, numărul 2,7 este 27 cu un factor de scalare de 10, 3,14 - 314 cu un factor de 100. Cu toate acestea, această abordare nu este foarte precisă din punct de vedere computațional, prin urmare, folosesc adesea reprezentarea în virgulă mobilă. În calcul, aritmetica în virgulă mobilă este o reprezentare aritmetică specială a numerelor reale ca o aproximare pentru a sprijini un compromis între interval și precizie. Formatul principal pentru reprezentarea numerelor în virgulă mobilă în Java se numește float. Numele său vine de la virgulă flotantă. Float este de 32 de biți, dintre care 1 bit este un bit cu semn, 8 biți pentru exponent și 23 de biți pentru semnificație. Intervalul său este de ±3. 40282347E + 38F adică 6-7 cifre semnificative. Numele double vine de la double float. Thetipul dublu este de două ori mai mare decât float : 8 octeți față de 4. Se mai numește și număr real cu precizie dublă. Din cei 64 de biți rezervați pentru un număr dublu, 1 este bit cu semn, 11 biți sunt pentru exponent și 52 de biți sunt pentru semnificație. Fracția dublă Java stochează numere în intervalul ±1,79769313486231570E + 308, adică 15-16 cifre semnificative. Double este un format mai precis. Așadar, dacă aveți nevoie să stocați numere foarte mari, preferați dublu față de float este o idee bună. Apropo, metodele matematice precum sqrt, sin sau cos și multe altele returnează valori duble. Cu toate acestea, ar trebui să plătiți pentru precizie dublă cu memorie.

Crearea unei variabile duble

Tipul dublu este folosit pentru a stoca numere reale. Pentru a crea o variabilă în cod care va putea stoca numere reale, trebuie să utilizați comanda:

double name;
Unde nume este numele variabilei.

double myPrice;  //here we create a variable called myPrice
double action; //and here -- action. 
De asemenea, puteți folosi prescurtarea pentru a crea mai multe variabile de tip double :

double name1, name2, name3;

Exemple de cuvinte cheie Java duble

Să dăm câteva exemple de utilizare a cuvântului cheie Java dublu pentru a crea o variabilă.

double myPrice = 5.0;
double height = 180;
double x = 7.1, y = 3.0;
Aici în variabila myPrice avem valoarea 5.0, în variabila înălțime — 180, în x punem valoarea 7.1 și 3.0 în y .

Dublu ca un întreg

În Java, variabilelor duble li se pot atribui atât numere reale, cât și numere întregi. Când se atribuie numere întregi, acestea sunt pur și simplu convertite în numere reale. Deși uneori este posibilă o ușoară pierdere de precizie.

double height = 180;
int k = 2; 
int i = 5; 
double myDouble = k*i;
De fapt, variabila înălțime stochează numărul 180.0, iar variabila myDouble stochează numărul 10.0.

Interacțiune dublă și întreagă

În plus, dacă într-o expresie sunt implicate un număr întreg și un număr real, atunci numărul întreg este mai întâi convertit într-un număr real și abia apoi interacționează cu un alt număr real.

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);
   }
}
În acest exemplu, rezultatul va fi:
5,0 10,0 14,0
Chiar dacă numărul myDouble1 este notat ca 5 și nu 5.0, Java vede acest număr ca un dublu , așa că de fapt arată ca 5.0. Dacă înmulțim int și double, obținem întotdeauna un double , chiar dacă de fapt acest număr este un întreg. Putem atribui variabile de tip double variabilelor de tip int . Pentru a face acest lucru, trebuie să faceți o conversie explicită de tip. Desigur, partea fracțională va fi aruncată, numărul va fi trunchiat la un întreg mai mic.

public class DoubleDemo {
   public static void main(String[] args) {
       double x = 57.789;
       int almostX;
       almostX = (int)x;
       System.out.println(almostX);
   }
}
Ieșirea este:
57
În sfârșit, să vorbim despre împărțire. Acesta este cel mai interesant lucru. Este posibil să fi dat deja peste faptul că, dacă împărțiți două numere întregi, atunci, ca urmare a împărțirii, obținem un număr întreg, chiar dacă nu sunt divizibili uniform unul de celălalt:

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7/2;
       System.out.println(myDouble);
   }
}
Rezultatul este:
3.0
Acest lucru se datorează faptului că mașina Java împarte mai întâi două numere întregi (și primește 3), apoi stochează această valoare într-o variabilă de tip double și primește ca rezultat 3.0. Pentru a obține nu un întreg, ci o diviziune obișnuită, trebuie să trișați. De exemplu, scrieți unul dintre numere ca număr real (atunci întreaga expresie este convertită automat în real). Dacă lucrăm cu variabile de tip întreg, atunci acestea pot fi înmulțite cu 1,0. Aceasta nu va schimba valoarea, dar va schimba tipul variabilei de la int la double .

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);
   }
}
Ieșirea este:
3,5 2,5
Comentarii
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION