Biorąc pod uwagę podwójną liczbę rzeczywistą. Napisz program w języku Java konwertujący podaną liczbę podwójną na liczbę całkowitą (int) w języku Java.
Przykłady:
Input: double = 3452.234 Output: 3452 Input: double = 98.23 Output: 98>
Podwójnie: Typ danych double to 64-bitowy typ zmiennoprzecinkowy IEEE 754 o podwójnej precyzji. Jego zakres wartości jest nieograniczony. Typ danych double jest powszechnie używany w przypadku wartości dziesiętnych, podobnie jak typ zmiennoprzecinkowy. Podwójnego typu danych nigdy nie należy używać w przypadku precyzyjnych wartości, takich jak waluta. Jego wartość domyślna to 0,0 .
Example: double d1 = 10.5>
Liczba całkowita: Typ danych Integer lub int to 32-bitowa liczba całkowita ze znakiem uzupełnienia do dwóch. Jego zakres wartości mieści się w przedziale od – 2 147 483 648 (-2^31) do 2 147 483 647 (2^31 -1) (włącznie). Jego minimalna wartość to – 2 147 483 648, a maksymalna to 2 147 483 647. Jego wartość domyślna to 0 . Typ danych int jest zwykle używany jako domyślny typ danych dla wartości całkowitych, chyba że nie ma problemu z pamięcią.
Example: int a = 10>
Podchodzi do
Istnieje wiele podejść do konwersji typu danych Double na typ danych Integer (int). Poniżej wymieniono kilka z nich.
- Za pomocą Typ Casting
- Za pomocą Double.intValue() metoda
- Za pomocą Okrągła matematyka() metoda
Podejście 1: Używanie Typ Casting
Technika ta jest bardzo prosta i przyjazna dla użytkownika.
Składnia:
mvc dla Javy
double data = 3452.345 int value = (int)data;>
Przykład:
Jawa
// 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);> >}> }> |
>
>Wyjście
Double - 3452.345 Integer - 3452>
Złożoność czasowa: O(1) jako operacje stałe.
Przestrzeń pomocnicza: O(1), ponieważ nie jest wymagana dodatkowa przestrzeń.
Podejście 2: Użycie metody Double.intValue().
Technika ta jest podobna do metody rzutowania na typ. Główna różnica między metodą rzutowania a tą metodą polega na tym, że metoda rzutowania jest metodą jawną, a ta metoda jest klasą Wrapper. Double obcina wszystkie cyfry po przecinku.
losowa liczba Java
Składnia:
double data = 3452.345 Double newData = new Double(data); int value = newData.intValue();>
Przykład:
Jawa
// 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);> >}> }> |
>
>
Wyjście:
Double - 3452.345 Double - 3452>
Złożoność czasowa: O(1) jako operacje stałe.
Przestrzeń pomocnicza: O(1), ponieważ nie jest wymagana dodatkowa przestrzeń.
Podejście 3: Używanie Okrągła matematyka() metoda
Okrągła matematyka() akceptuje wartość podwójną i konwertuje ją na najbliższą długą wartość, dodając 0,5 do wartości i odcinając jej miejsca dziesiętne. Długą wartość można następnie przekonwertować na liczbę typu int za pomocą rzutowania typów.
Składnia:
long Math.Round(Double doubleValue);>
Przykład:
Jawa
// 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);> >}> }> |
>
>Wyjście
co oznacza Google
Double : 3452.345 Integer : 3452 Double : 3452.765 Integer : 3453>
Złożoność czasowa: O(1) jako operacje stałe.
Przestrzeń pomocnicza: O(1), ponieważ nie jest wymagana dodatkowa przestrzeń.
Notatka: Tutaj widać, że metoda Math.round() konwertuje liczbę podwójną na liczbę całkowitą poprzez zaokrąglenie liczby do najbliższej liczby całkowitej.
Na przykład - 10.6 zostanie przekonwertowany na 11 przy użyciu Math.round() metoda i 1zostanie przekonwertowany na 10 przy użyciu rzutowania typów lub metody Double.intValue(). .