Jak przekonwertować long na int w Javie

Jak Przekonwertowac Long Na Int W Javie



W Javie mogą zaistnieć pewne sytuacje, w których programista musi efektywnie oszczędzać pamięć. Na przykład przydzielenie typu danych o stosunkowo mniejszym zakresie wartości lub pozbycie się dodatkowych wartości. W takich przypadkach konwersja „ długi ' Do ' int” w Javie wchodzi w życie poprzez usprawnienie operacji arytmetycznych, złożoność kodu i zajmuje stosunkowo mniej czasu wykonania.

W tym artykule omówimy konwersję „long” na „int” w Javie.

Czym są „długie” i „int” w Javie?

długi ” wpisz w Javie zakresy od „ -9223372036854775808 ' Do ' 922337203685477580 ” i jest przydzielany „ 64 ” bity. „ int ”typ jednak zajmuje” 32 ” bity od „ -2147483648 ' Do ' 2147483647 ”. Oznacza to, że dowolna liczba „ int ” typy mogą być łatwo obsługiwane przez „ długi ”, ale nie zawsze tak jest przez większość czasu.







Jak przekonwertować „long” na „int” za pomocą Javy?

Przekonwertować na ' długi ' Do ' int ” w Javie zastosuj następujące podejścia:



Podejście 1: Konwersja long na int w Javie przy użyciu metody „Math.toIntExact()”

Math.toIntExact() ” w Javie daje „ int ”wartość z podanej” długi ' argument. Tę metodę można zastosować, aby po prostu przekazać „ długi ” wartość jako argument i zwróć ją jako liczbę całkowitą.



Składnia





Matematyka . doIntDokładnie ( długi wartość )

W tej składni „ długi val ” odnosi się do wartości, która musi zostać zwrócona jako „ int ”.

Przykład
Omówmy następujący przykład:



publiczny klasa longtoint2 {
publiczny statyczny próżnia główny ( Strunowy [ ] argumenty ) {
długi wybór1 = 8624675L ;
długi wartość2 = 3482398L ;
int aktualizacjaWart1 = Matematyka . doIntDokładnie ( wybór1 ) ;
int updVal2 = Matematyka . doIntDokładnie ( wartość2 ) ;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + aktualizacjaWart1 ) ;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + updVal2 ) ;
}
}

W tym fragmencie kodu wykonaj następujące kroki:

  • Najpierw zainicjuj dwa „ długi wartości.
  • Notatka: Określony ' Ł ” w wartościach reprezentują i różnicują „ długi ” wartości z „ int wartości.
  • Następnie zastosuj „ Math.toIntExact() ” dwukrotnie i zgromadzić obie zainicjowane długie wartości jako jej parametr, aby przekonwertować je na liczby całkowite.
  • Na koniec zarejestruj przekonwertowane wartości całkowite w konsoli.

Wyjście

W powyższym wyniku można przeanalizować, że wyświetlane są odpowiednie wartości całkowite.

Notatka: Proces konwersji (long na int) działa dobrze, gdy wartość „ długi ” jest mniejsza lub równa maksymalnej wartości „ int ”, tj. (2147483647). W drugim przypadku wystąpi błąd i może dojść do utraty danych.

Demonstracja
Przyjrzyjmy się omawianej koncepcji prowadzącej do ograniczenia:

W powyższym przykładzie po prostu zwiększ to drugie „ długi ” i wykonaj konwersję. Doprowadzi to do napotkania „ Całkowitą przepełnienie ” ograniczenie, ponieważ przeliczona wartość przekracza „ int „maksymalny limit.

Podejście 2: Konwertuj long na int w Javie przy użyciu „wąskiego rzutowania”

Typowanie ” odpowiada przypisaniu wartości jednego prymitywnego typu danych do innego. W tym przypadku „ zawężenie typowania ” wchodzi w życie, ponieważ wyższy typ danych, tj. „ długi ” jest przekształcany w niższy typ danych „ int ”. Można to osiągnąć, po prostu umieszczając wartość, która ma zostać przekształcona, a następnie żądany typ w nawiasach.

Przykład
Poniższy przykład wyjaśnia omawianą koncepcję:

publiczny klasa longtoint {
publiczny statyczny próżnia główny ( Strunowy [ ] argumenty ) {
długi wybór1 = 647467L ;
długi wartość2 = 348 239L ;
int aktualizacjaWart1 = ( int ) wybór1 ;
int updVal2 = ( int ) wartość2 ;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + aktualizacjaWart1 ) ;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + updVal2 ) ;
}
}

W powyższych liniach kodu:

  • Podobnie zainicjuj dwa „ długi wartości.
  • W następnym kroku zastosuj „ wąskie typowanie ”, umieszczając wartość, która ma zostać przekonwertowana, a następnie żądany typ, tj. „ int ”.
  • Na koniec wyświetl przekonwertowane „ int ” na konsoli.

Wyjście

Na tym wyjściu widać, że „ długi ” wartości są konwertowane na „ int ”, odpowiednio.

Podejście 3: Konwertuj długi obiekt na int w Javie przy użyciu metody „intValue()”.

intValue() ” w Javie zwraca wartość powiązanej liczby w postaci „ int ”. Metodę tę można zaimplementować w celu prostego przekształcenia powiązanego długiego „ obiekty ” na liczby całkowite.

Przykład
Przejrzyj poniższy przykład, aby przeprowadzić konwersję:

publiczny klasa longtoint3 {
publiczny statyczny próżnia główny ( Strunowy [ ] argumenty ) {
Długi val1 = nowy Długi ( 8624675L ) ;
Długi val2 = nowy Długi ( 3482398L ) ;
int aktualizacjaWart1 = wybór1. intValue ( ) ;
int updVal2 = wartość2. intValue ( ) ;;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + aktualizacjaWart1 ) ;
System. na zewnątrz . println ( 'Wartość całkowita to: ' + updVal2 ) ;
}
}

W powyższym bloku kodu:

  • Przede wszystkim utwórz dwa „ długi ” obiektów za pośrednictwem „ nowy ” słowo kluczowe i „ Długi() ” odpowiednio konstruktora.
  • W parametrach konstruktora określ długie wartości, które mają zostać przekształcone w „ int ”.
  • Teraz skojarz „ intValue() ” z obydwoma utworzonymi obiektami i przekonwertować zgromadzone „ długi ” wartości na „ liczby całkowite ” i wyświetlić je.

Wyjście

Powyższy wynik oznacza, że ​​wartości obiektu są konwertowane na „ liczby całkowite ” odpowiednio.

Wniosek

Aby przekonwertować long na int w Javie, zastosuj „ Math.toIntExact() „metoda”, „ Wąskie rzutowanie „podejście” lub „podejście intValue() ' metoda. Podejścia te przekształcają zainicjowaną długą wartość i obiekt w liczbę całkowitą, pod warunkiem, że „ długi ” wartość, którą należy przeliczyć, nie przekracza maksymalnej wartości „ int ”. Ten blog jest przewodnikiem po konwersji long na int przy użyciu Javy.