Dané dvojité reálné číslo. Napište Java program, který převede dané dvojité číslo na celé číslo (int) v Javě.
Příklady:
Input: double = 3452.234 Output: 3452 Input: double = 98.23 Output: 98>
Dvojnásobek: Datový typ double je 64bitový IEEE 754 s plovoucí desetinnou čárkou s dvojitou přesností. Rozsah jeho hodnot je nekonečný. Datový typ double se běžně používá pro desítkové hodnoty, stejně jako float. Datový typ double by se také nikdy neměl používat pro přesné hodnoty, jako je například měna. Své výchozí hodnota je 0,0 .
Example: double d1 = 10.5>
Celé číslo: Datový typ Integer nebo int je 32bitové celé číslo doplněné dvojkou se znaménkem. Jeho rozsah hodnot leží mezi – 2 147 483 648 (-2^31) až 2 147 483 647 (2^31 -1) (včetně). Jeho minimální hodnota je – 2 147 483 648 a maximální hodnota je 2 147 483 647. Své výchozí hodnota je 0 . Datový typ int se obecně používá jako výchozí datový typ pro integrální hodnoty, pokud není problém s pamětí.
Example: int a = 10>
Přístupy
Existuje mnoho přístupů, jak provést převod datového typu Double na datový typ Integer (int). Některé z nich jsou uvedeny níže.
- Použitím TypeCasting
- Použitím Double.intValue() metoda
- Použitím Math.round() metoda
Přístup 1: Použití TypeCasting
Tato technika je velmi jednoduchá a uživatelsky přívětivá.
Syntax:
double data = 3452.345 int value = (int)data;>
Příklad:
Jáva
// 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);> > }> }> |
>
>Výstup
Double - 3452.345 Integer - 3452>
Časová náročnost: O(1) jako konstantní operace se používají.
Pomocný prostor: O(1), protože není potřeba žádné místo navíc.
Přístup 2: Použití metody Double.intValue().
Tato technika je podobná metodě typového odlévání. Hlavní rozdíl mezi metodou přetypování a touto metodou je v tom, že metoda přetypování je explicitní metoda a tato metoda je třída Wrapper Double zkrátí všechny číslice za desetinnou čárkou.
Syntax:
double data = 3452.345 Double newData = new Double(data); int value = newData.intValue();>
Příklad:
Jáva
// 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);> > }> }> |
>
>
Výstup:
jak najít skryté věci na android
Double - 3452.345 Double - 3452>
Časová náročnost: O(1) jako konstantní operace se používají.
Pomocný prostor: O(1), protože není potřeba žádné místo navíc.
Přístup 3: Použití Math.round() metoda
Math.round() přijme dvojnásobnou hodnotu a převede ji na nejbližší dlouhou hodnotu přidáním 0,5 k hodnotě a oříznutím jejích desetinných míst. Long hodnotu pak lze převést na int pomocí přetypování.
Syntax:
long Math.Round(Double doubleValue);>
Příklad:
Jáva
// 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);> > }> }> |
>
>Výstup
Double : 3452.345 Integer : 3452 Double : 3452.765 Integer : 3453>
Časová náročnost: O(1) se používají jako konstantní operace.
Pomocný prostor: O(1), protože není potřeba žádné místo navíc.
Poznámka: Zde můžete vidět, že metoda Math.round() převede double na celé číslo zaokrouhlením čísla na nejbližší celé číslo.
Například - 10.6 bude převeden na 11 pomocí Math.round() metoda a 1bude převedena na 10 pomocí typecasting nebo metody Double.intValue(). .