Gegeben sei eine doppelte reelle Zahl. Schreiben Sie ein Java-Programm, um die angegebene Double-Zahl in eine Ganzzahl (int) in Java umzuwandeln.
Beispiele:
Input: double = 3452.234 Output: 3452 Input: double = 98.23 Output: 98>
Doppelt: Der Double-Datentyp ist ein 64-Bit-IEEE 754-Gleitkomma mit doppelter Genauigkeit. Sein Wertebereich ist endlos. Der Double-Datentyp wird üblicherweise für Dezimalwerte verwendet, genau wie Float. Der Datentyp „Double“ sollte außerdem niemals für präzise Werte wie Währungen verwendet werden. Es ist Der Standardwert ist 0,0 .
Example: double d1 = 10.5>
Ganze Zahl: Der Datentyp „Integer“ oder „int“ ist eine 32-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen. Sein Wertebereich liegt zwischen – 2.147.483.648 (-2^31) und 2.147.483.647 (2^31 -1) (einschließlich). Sein Mindestwert beträgt –2.147.483.648 und sein Höchstwert beträgt 2.147.483.647. Es ist Der Standardwert ist 0 . Der Datentyp int wird im Allgemeinen als Standarddatentyp für ganzzahlige Werte verwendet, es sei denn, es gibt kein Problem mit dem Speicher.
Example: int a = 10>
Ansätze
Es gibt zahlreiche Ansätze für die Konvertierung des Double-Datentyps in den Integer-Datentyp (int). Einige davon sind unten aufgeführt.
Finde mein iPhone Android
- Benutzen TypeCasting
- Benutzen Double.intValue() Methode
- Benutzen Math.round() Methode
Ansatz 1: Verwenden TypeCasting
Diese Technik ist sehr einfach und benutzerfreundlich.
Syntax:
double data = 3452.345 int value = (int)data;>
Beispiel:
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);> >}> }> |
>
>
Binäre Suche in JavaAusgabe
Double - 3452.345 Integer - 3452>
Zeitkomplexität: O(1) als konstante Operationen werden verwendet.
Hilfsraum: O(1), da kein zusätzlicher Platz erforderlich ist.
Ansatz 2: Verwendung der Double.intValue()-Methode
Diese Technik ähnelt der Typisierungsmethode. Der Hauptunterschied zwischen der Typumwandlungsmethode und dieser Methode besteht darin, dass die Typumwandlungsmethode eine explizite Methode ist und diese Methode eine Wrapper-Klasse ist. Double schneidet alle Ziffern nach dem Dezimalpunkt ab.
Syntax:
double data = 3452.345 Double newData = new Double(data); int value = newData.intValue();>
Beispiel:
Java
Listenerstellung in 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);> >}> }> |
Sortieralgorithmus für Einfügungen
>
>
Ausgabe:
Double - 3452.345 Double - 3452>
Zeitkomplexität: O(1) als konstante Operationen werden verwendet.
Hilfsraum: O(1), da kein zusätzlicher Platz erforderlich ist.
Ansatz 3: Verwenden Math.round() Methode
Math.round() akzeptiert einen Double-Wert und wandelt ihn in den nächsten langen Wert um, indem 0,5 zum Wert addiert und seine Dezimalstellen gekürzt werden. Der Long-Wert kann dann mithilfe der Typumwandlung in einen Int-Wert umgewandelt werden.
Syntax:
long Math.Round(Double doubleValue);>
Beispiel:
Java
Angular CLI deinstallieren
// 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);> >}> }> |
>
>Ausgabe
Double : 3452.345 Integer : 3452 Double : 3452.765 Integer : 3453>
Zeitkomplexität: O(1) als konstante Operationen werden verwendet.
Hilfsraum: O(1), da kein zusätzlicher Platz erforderlich ist.
Notiz: Hier sehen Sie, dass die Methode Math.round() das Double in eine Ganzzahl umwandelt, indem sie die Zahl auf die nächste Ganzzahl rundet.
Zum Beispiel - 10.6 wird umgewandelt in 11 mit Math.round() Methode und 1 werden konvertiert 10 mit Typecasting oder der Double.intValue()-Methode .