Podano dvojno realno število. Napišite program Java za pretvorbo danega dvojnega števila v celo število (int) v Javi.
Primeri:
Input: double = 3452.234 Output: 3452 Input: double = 98.23 Output: 98>
dvojno: Dvojni podatkovni tip je 64-bitni IEEE 754 s plavajočo vejico z dvojno natančnostjo. Njen vrednostni razpon je neskončen. Dvojni podatkovni tip se običajno uporablja za decimalne vrednosti, tako kot float. Dvojnega podatkovnega tipa tudi nikoli ne smete uporabljati za natančne vrednosti, kot je valuta. Njegovo privzeta vrednost je 0,0 .
Example: double d1 = 10.5>
Celo število: Podatkovni tip Integer ali int je 32-bitno komplementno celo število s predznakom. Njegov razpon vrednosti je med – 2.147.483.648 (-2^31) do 2.147.483.647 (2^31 -1) (vključno). Njegova najmanjša vrednost je – 2.147.483.648, največja pa 2.147.483.647. Njegovo privzeta vrednost je 0 . Podatkovni tip int se na splošno uporablja kot privzeti podatkovni tip za integralne vrednosti, razen če ni težav s pomnilnikom.
Example: int a = 10>
Pristopi
Obstajajo številni pristopi za pretvorbo podatkovnega tipa Double v podatkovni tip Integer (int). Nekaj jih je navedenih spodaj.
- Uporaba TypeCasting
- Uporaba Double.intValue() metoda
- Uporaba Math.round() metoda
Pristop 1: Uporaba TypeCasting
Ta tehnika je zelo preprosta in uporabniku prijazna.
Sintaksa:
double data = 3452.345 int value = (int)data;>
primer:
Java
// Java program to convert Double to> // int using Typecasting> public> class> GFG {> >// main method> >public> static> void> main(String args[])> >{> >// Get the double value> >double> data =>3452.345>;> >System.out.println(>'Double - '> + data);> >// convert into int> >int> value = (>int>)data;> >// print the int value> >System.out.println(>'Integer - '> + value);> >}> }> |
>
java poveži z mysql
>Izhod
Double - 3452.345 Integer - 3452>
Časovna zapletenost: O(1) kot stalne operacije.
Pomožni prostor: O(1), ker dodaten prostor ni potreben.
2. pristop: uporaba metode Double.intValue().
Ta tehnika je podobna metodi tipiziranja. Glavna razlika med metodo pretvorbe tipov in to metodo je, da je metoda pretvorbe tipov eksplicitna metoda, ta metoda pa je razred Wrapper, ki dvojno skrajša vse številke za decimalno vejico.
Sintaksa:
double data = 3452.345 Double newData = new Double(data); int value = newData.intValue();>
primer:
Java
// Java program to convert Double to int> // using Double.intValue()> public> class> GFG {> >// main method> >public> static> void> main(String args[])> >{> >// Get the double value> >Double data =>3452.345>;> >System.out.println(>'Double - '> + data);> >// Create a wrapper around> >// the double value> >Double newData =>new> Double(data);> >// convert into int> >int> value = newData.intValue();> >// print the int value> >System.out.println(>'Double - '> + value);> >}> }> |
>
>
Izhod:
Double - 3452.345 Double - 3452>
Časovna zapletenost: O(1) kot stalne operacije.
Pomožni prostor: O(1), ker dodaten prostor ni potreben.
Pristop 3: Uporaba Math.round() metoda
Math.round() sprejme dvojno vrednost in jo pretvori v najbližjo dolgo vrednost tako, da vrednosti doda 0,5 in ji odreže decimalne točke. Dolgo vrednost je nato mogoče pretvoriti v int s pretvorbo tipov.
Sintaksa:
long Math.Round(Double doubleValue);>
primer:
Java
// Java program to convert Double to int> // using Math.round()> public> class> GFG {> >// main method> >public> static> void> main(String args[])> >{> >// Get the double value> >double> data1 =>3452.345>;> >System.out.println(>'Double : '> + data1);> >// convert into int> >int> value1 = (>int>)Math.round(data1);> >// print the int value> >System.out.println(>'Integer : '> + value1);> > >double> data2 =>3452.765>;> >System.out.println(>'
Double : '> + data2);> >// convert into int> >int> value2 = (>int>)Math.round(data2);> >// print the int value> >System.out.println(>'Integer : '> + value2);> >}> }> |
>
>Izhod
Double : 3452.345 Integer : 3452 Double : 3452.765 Integer : 3453>
Časovna zapletenost: O(1) kot stalne operacije.
Pomožni prostor: O(1), ker dodaten prostor ni potreben.
Opomba: Tukaj lahko vidite, da metoda Math.round() dvojno pretvori v celo število tako, da število zaokroži na najbližje celo število.
stringformatNa primer – 10.6 bo pretvorjen v 11 z uporabo Math.round() metoda in 1 bo pretvorjen v 10 z uporabo metode pretvorbe tipov ali Double.intValue(). .