CodeGym /Blog Java /Aleatoriu /Cum se transformă int în double în Java
John Squirrels
Nivel
San Francisco

Cum se transformă int în double în Java

Publicat în grup

Pe scurt despre tipurile int și double în Java

int este un tip Java primitiv pentru numere întregi (cum ar fi -25, 0, 1828182845). Acest tip folosește 32 de biți pentru a stoca o valoare variabilă. Intervalul numerelor int este de la -231 la 231 - 1 sau, ceea ce este același, de la -2147483648 la 2147483647. Tipul dublu în Java reprezintă numere în virgulă mobilă, alocă 64 de biți în memorie și intervalul tipului este -1,7 *10308 până la 1,7*10308. Dacă reprezentați intervalul de int în aceeași formă, acesta va fi -2*109 până la +2*109. Cred că este evident că orice număr de tip int se va potrivi în memoria alocată pentru un număr de tip primitiv dublu. În plus, orice număr întreg poate fi reprezentat ca un număr fracționar cu o parte fracțională zero. Din punct de vedere matematic, nu există nicio îndoială că: 5 = 5,0 or -57,0 = -57.

Conversia int în double

Din perspectiva Java, tipurile double și int sunt de asemenea compatibile. Întrucât conversia int în double înseamnă transformarea mai mare în mai mică, acest tip de conversie numește tipul implicit majuscule sau extindere. Puteți converti automat int în double în Java, atribuind valoarea int unei variabile duble. Să avem un exemplu de cod de tipare:

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);
   }
}
Iată rezultatul:
numerele mele întregi sunt: ​​10, 2147483647 după tipare/extindere la dublu: 10,0, 2,147483647E9
Note: E9 aici înseamnă 109, se numește notație științifică. Rețineți, de asemenea, că numerele duble sunt de obicei scrise cu un punct care separă partea fracționară. dacă declarați o variabilă de dublu și puneți o valoare în ea, nu este necesar să faceți acest lucru, dar în ieșire numărul dublu va avea întotdeauna o parte fracțională, chiar dacă este zero.

Conversia int în double folosind operația numerică neutră

Mai mult, toate operațiunile numerice pe variabile de diferite tipuri în Java duc la lărgirea tipului. Adică rezultatul operației va fi de un tip mai larg. Prin urmare, pentru a converti de la int la dublu, puteți utiliza operația „neutru”. De exemplu, înmulțiți un int cu 1,0 (un număr dublu) sau adăugați 0,0 la un int. Iată un exemplu de astfel de tipare:

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);
   }
}
Ieșirea este:
7,0 5,0
Apropo, puteți converti în double nu numai int, ci toate tipurile numerice primitive. Iată ordinea posibilei conversii de la cel mai mic la cel mai mare:
Byte -> Short -> Char -> Int -> Long -> Float -> Double
Comentarii
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION