Co to jest konwersja typu w Javie? [Z przykładami]

Opublikowany: 2021-12-23

Jeśli zaczynasz swoją przygodę z programowaniem w języku Java, jednym z podstawowych pojęć, które należy opanować, jest rzutowanie typu lub konwersja typu. Niezależnie od tego, czy chcesz opanować programowanie w języku Java, czy chcesz rozpocząć karierę w tworzeniu oprogramowania, koncepcje tworzenia typów zawsze będą dla Ciebie przydatne.

Konwersja typu to po prostu proces konwersji danych jednego typu danych na inny. Ten proces jest znany jako konwersja typów, rzutowanie typów, a nawet wymuszanie typów. Język programowania Java umożliwia programistom konwersję zarówno pierwotnych, jak i referencyjnych typów danych. Wykonując konwersję typu, wartość danych pozostaje taka sama, tylko że zmienił się ich typ. Należy zauważyć, że nie jest możliwe wykonanie rzutowania ani konwersji typu na zmiennych typu danych typu Boolean.

Java oferuje programistom różne typy konwersji typów. Przyjrzyjmy się niektórym z bardziej przydatnych konwersji typów!

Ucz się kursów rozwoju oprogramowania z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Spis treści

Konwersja typu pierwotnego w Javie

Pierwotne typy danych to po prostu typy danych zdefiniowane przez język programowania, z których mogą korzystać programiści. Java oferuje siedem różnych prymitywnych typów danych, takich jak:

  • Boole'a
  • Bajt
  • Zwęglać
  • Krótki
  • Int
  • Długi
  • Pływak
  • Podwójnie

Domyślnie za każdym razem, gdy przypisujesz wartości do dowolnej zmiennej w programowaniu w języku Java, wykonujesz konwersję typów pierwotnych, ponieważ przypisujesz wartość jednego typu do innego typu.

Niejawna konwersja typów w Javie

Oprócz domyślnego rzutowania typów pierwotnych, w Javie są jeszcze dwie konwersje typów — niejawna i jawna.

Niejawna konwersja typu, znana również jako rzutowanie rozszerzające, polega na rzutowaniu typu danych o niższych wartościach na typ danych o wyższych wartościach bez ponoszenia utraty danych. Oto przykład niejawnej konwersji typów w Javie:

Konw. klas publicznych{

public static void main(String[] args)

{

int i = 1500;

//automatyczna konwersja typów

długie l = i;

//automatyczna konwersja typów

pływak f = l;

System.out.println(„Wew.”+i);

System.out.println(„Długi”+l);

System.out.println(„Pływający”+f);

}

}

Wyjście:

Wartość wewnętrzna 15000

Długa wartość 15000

Wartość zmiennoprzecinkowa 15000,0

We wszystkich trzech powyższych instrukcjach występuje niejawne rzutowanie typu, a wartość typu danych „long” jest rzutowana jako int i float.

Niejawna konwersja typów w Javie ma miejsce, gdy spełnione są przede wszystkim te dwa warunki:

  • Te dwa typy danych powinny być ze sobą kompatybilne. Na przykład typy danych liczbowych są kompatybilne z innymi typami danych liczbowych, ale nie z typami łańcuchowymi lub boolowskimi. Podobnie typ danych ciągu nie jest zgodny z typem danych logicznych.
  • Wartość docelowa, którą należy przekonwertować, powinna mieć mniejszą długość. Na przykład 4 bajty danych można rzutować na 8-bajtowy typ danych.

Kolejność typów danych, w których zachodzi niejawna konwersja typów w Javie, jest następująca:

Byte > Short > Char > Int > Long > Float > Double

Jawna konwersja typów w Javie

Jawna konwersja typu jest przeciwieństwem niejawnej konwersji typu. Tak więc zamiast rozszerzania się, konwersja tego typu działa w kierunku zawężania. Deweloper przypisuje wartość wyższego typu danych do relatywnie niższego typu. Ponieważ rzutujemy dane z szerszego typu danych na węższy typ danych, istnieje ryzyko utraty danych, dlatego podczas przeprowadzania jawnej konwersji typu w Javie należy wykonać ostrożne wykonanie.

Podczas gdy niejawna konwersja typów w Javie może być wykonywana automatycznie przez kompilator, programista dokonuje jawnej konwersji typów. Oto przykład jawnego rzutowania typu w Javie:

klasa publiczna Wąskie

{

public static void main(String[] args)

{

podwójne d = 1500,06;

//wyraźna konwersja typu

długi l = (długi)d;

//wyraźna konwersja typu

int i = (int)l;

System.out.println("Podwójna wartość"+d);

//ułamek części utraconej

System.out.println("Długa wartość"+l);

//ułamek części utraconej

System.out.println("Wartość Int"+i);

}

}

Wyjście:

Podwójna wartość typu danych 1500,06

Wartość typu Long Data 1500

Int Wartość typu danych 1500

Jawna konwersja typów w Javie działa w następującej kolejności konwersji:

Double > Float > Long > Int > Char > Short > Byte

Na zakończenie

To prawie wszystkie podstawy, które musisz znać, jeśli chodzi o konwersję typów w Javie. Odtąd im więcej ćwiczysz, tym lepiej będziesz ogarniał te koncepcje. Należy pamiętać, że struktury danych (a nawet algorytmy) są jednym z ważniejszych aspektów informatyki i dlatego są równie ważne dla tworzenia oprogramowania. Niezależnie od stosu technologicznego, nad którym pracujesz, będziesz pracować z danymi i strukturami danych. Jeśli pracujesz nad złożonym projektem, najprawdopodobniej będziesz miał do czynienia z wieloma typami danych i strukturami danych, aby dotrzeć do celu. We wszystkich takich przypadkach, a także w ogóle, koncepcje konwersji typów pomogą Ci bez trudu utrzymać się na powierzchni.

Powinieneś więc zacząć ćwiczyć i bawić się różnymi typami danych, spróbować zaimplementować jawną konwersję typów w Javie, napotkać błędy i zmierzyć się z tym! To jedyny sposób na opanowanie języka programowania. W upGrad wierzymy w wartość praktyki i osobistego przewodnictwa, co znajduje odzwierciedlenie w naszych kursach i pedagogice nauczania. Jeśli jesteś początkującym programistą, który chce pracować nad rozwojem pełnego stosu, nasz program Executive PG w tworzeniu oprogramowania — specjalizacja w tworzeniu pełnego stosu jest przeznaczony właśnie dla Ciebie. Został stworzony, aby pomóc uczniom zacząć od zera, zrozumieć najbardziej złożone koncepcje i opanować je. Sprawdź nasz program nauczania i zarejestruj się wkrótce!

Czy konwersja typów w Javie zawsze musi być wykonywana przez programistę?

Konwersja typu jawnego musi być wykonana przez programistę. Jednak niejawna konwersja typu jest wykonywana przez sam kompilator.

Kiedy wymagana jest konwersja typów w Javie?

Programiści i twórcy oprogramowania muszą regularnie sprawdzać zgodność różnych typów danych, z którymi pracują. We wszystkich tych scenariuszach konwersja typów pomaga programistom kształtować typy danych zgodnie z wymaganiami ich programu.

Jaka konwersja typu jest automatycznie wykonywana w Javie?

Niejawna konwersja typów w Javie jest wykonywana automatycznie.