logo

Converti doppio in intero in Java

Dato un numero reale doppio. Scrivere un programma Java per convertire il numero doppio indicato in un numero intero (int) in Java.

Esempi:



 Input: double = 3452.234 Output: 3452 Input: double = 98.23 Output: 98>

Doppio: Il tipo di dati double è un tipo a virgola mobile IEEE 754 a 64 bit a doppia precisione. La sua gamma di valori è infinita. Il tipo di dati double viene comunemente utilizzato per i valori decimali, proprio come float. Inoltre, il tipo di dati double non deve mai essere utilizzato per valori precisi, come la valuta. Suo il valore predefinito è 0,0 .

 Example:  double d1 = 10.5>

Numero intero: Il tipo di dati Integer o int è un numero intero in complemento a due con segno a 32 bit. Il suo intervallo di valori è compreso tra – 2.147.483.648 (-2^31) e 2.147.483.647 (2^31 -1) (incluso). Il suo valore minimo è – 2.147.483.648 e il valore massimo è 2.147.483.647. Suo il valore predefinito è 0 . Il tipo di dati int viene generalmente utilizzato come tipo di dati predefinito per valori integrali a meno che non vi siano problemi relativi alla memoria.

 Example: int a = 10>

Si avvicina

Esistono numerosi approcci per eseguire la conversione del tipo di dati Double nel tipo di dati Integer (int). Alcuni di essi sono elencati di seguito.



  • Utilizzando TipoCasting
  • Utilizzando Double.intValue() metodo
  • Utilizzando Matematica.round() metodo

Approccio 1: utilizzo TipoCasting

Questa tecnica è molto semplice e intuitiva.

Sintassi:

double data = 3452.345 int value = (int)data;>

Esempio:



Giava


3d nell'autocad



// 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);> >}> }>

>

>

Produzione

Double - 3452.345 Integer - 3452>

Complessità temporale: O(1) poiché vengono utilizzate operazioni costanti.
Spazio ausiliario: O(1) perché non è richiesto spazio aggiuntivo.

Approccio 2: utilizzo del metodo Double.intValue()

Questa tecnica è simile al metodo di typecasting. La differenza principale tra il metodo di typecasting e questo metodo è che il metodo di typecasting è un metodo esplicito e questo metodo è una classe Wrapper Double tronca tutte le cifre dopo il punto decimale.

Sintassi:

double data = 3452.345 Double newData = new Double(data); int value = newData.intValue();>

Esempio:

Giava


ricerca binaria 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);> >}> }>

>

matematica Java sqrt

>

Produzione:

Double - 3452.345 Double - 3452>

Complessità temporale: O(1) poiché vengono utilizzate operazioni costanti.
Spazio ausiliario: O(1) perché non è richiesto spazio aggiuntivo.

Approccio 3: Utilizzo Matematica.round() metodo

Matematica.round() accetta un valore double e lo converte nel valore long più vicino aggiungendo 0,5 al valore e tagliando i suoi punti decimali. Il valore lungo può quindi essere convertito in un int utilizzando il typecasting.

Sintassi:

long Math.Round(Double doubleValue);>

Esempio:

Giava




// 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);> >}> }>

>

>

Produzione

Double : 3452.345 Integer : 3452 Double : 3452.765 Integer : 3453>

Complessità temporale: O(1) poiché vengono utilizzate operazioni costanti.
Spazio ausiliario: O(1) perché non è richiesto spazio aggiuntivo.

Nota: Qui puoi vedere che il metodo Math.round() converte il double in un numero intero arrotondando il numero all'intero più vicino.

r nella programmazione in c

Per esempio - 10.6 verrà convertito in 11 utilizzando Math.round() metodo e 1 verrà convertito in 10 utilizzando il typecasting o il metodo Double.intValue() .