Typy danych w Javie

Typy danych w Javie

Java jest językiem o typie statycznym, a także językiem o silnym typowaniu, ponieważ w Javie każdy typ danych (taki jak liczba całkowita, znak, liczba szesnastkowa, liczba dziesiętna upakowany itd.) jest predefiniowany jako część języka programowania, a wszystkie stałe i zmienne zdefiniowane dla dany program musi być opisany jednym z typów danych Java.

Typy danych w Javie

Typy danych w Javie mają różne rozmiary i wartości, które można przechowywać w zmiennej utworzonej zgodnie z wygodą i okolicznościami, aby uwzględnić wszystkie przypadki testowe. Java ma dwie kategorie, według których typy danych są segregowane

  1. Pierwotny typ danych: takie jak wartość logiczna, char, int, short, byte, long, float i double
  2. Nieprymitywny typ danych lub obiektowy typ danych: takie jak ciąg, tablica itp.

Typy danych-Java



Pierwotne typy danych w Javie

Dane pierwotne są tylko pojedynczymi wartościami i nie mają żadnych specjalnych możliwości. Istnieje 8 prymitywnych typów danych. Są one przedstawione poniżej w formie tabelarycznej w następujący sposób:

Typ

Opis

Domyślny

Rozmiar

Przykładowe literały

Zakres wartości

wartość logiczna prawda czy fałsz FAŁSZ 1 bit prawda fałsz

prawda fałsz

bajt liczba całkowita z uzupełnieniem do dwójki 0 8 bitów (nic)

-128 do 127

zwęglać Znak Unicode u0000 16 bitów „a”, „u0041”, „101”, „”, „”, „ ”, „b”

znaki reprezentujące wartości ASCII

0 do 255

krótki liczba całkowita z uzupełnieniem do dwójki 0 16 bitów (nic)

-32 768 do 32 767

wew Liczba całkowita z uzupełnieniem do dwójki 0 32 bity -2, -1,0,1,2

-2 147 483 648

Do

2 147 483 647

długi liczba całkowita z uzupełnieniem do dwójki 0 64 bity -2L, -1L, 0L, 1L, 2L

-9 223 372 036 854 775 808

Do

9 223 372 036 854 775 807

platforma IEEE 754 zmiennoprzecinkowy 0,0 32 bity 1.23e100f, -1.23e-100f, .3f, 3.14F

do 7 cyfr dziesiętnych

podwójnie IEEE 754 zmiennoprzecinkowy 0,0 64 bity 1.23456e300d, -123456e-300d, 1e1d

do 16 cyfr dziesiętnych

Omówmy i zaimplementujmy każdy z następujących typów danych, które są następujące:

1. Typ danych logicznych

Typ danych Boolean reprezentuje tylko jeden bit informacji albo prawda, albo fałsz który ma reprezentować dwie wartości logiczne logiki i algebry Boole'a, ale rozmiar typu danych boolowskich wynosi zależne od maszyny wirtualnej . Wartości typu boolean nie są konwertowane pośrednio ani jawnie (za pomocą rzutowania) na żaden inny typ. Ale programista może z łatwością napisać kod konwersji.

Składnia:

boolean booleanVar; 

Rozmiar: Zależne od maszyny wirtualnej

2. Bajtowy typ danych

Typ danych bajtowych to 8-bitowa liczba całkowita z uzupełnieniem do dwóch ze znakiem. Typ danych bajtowy jest przydatny do oszczędzania pamięci w dużych tablicach.

Składnia:

byte byteVar; 

Rozmiar: 1 bajt (8 bitów)

3. Krótki typ danych

Krótki typ danych to 16-bitowa liczba całkowita z uzupełnieniem do dwóch ze znakiem. Podobnie jak w przypadku bajtu, użyj skrótu, aby zaoszczędzić pamięć w dużych tablicach w sytuacjach, gdy oszczędność pamięci faktycznie ma znaczenie.

Składnia:

short shortVar; 

Rozmiar: 2 bajty (16 bitów)

4. Typ danych całkowitych

Jest to 32-bitowa liczba całkowita z uzupełnieniem do dwóch ze znakiem.

Składnia:

int intVar; 

Rozmiar: 4 bajty (32 bity)

Pamiętać: W Javie SE 8 i nowszych możemy używać typu danych int do reprezentowania 32-bitowej liczby całkowitej bez znaku, która ma wartość z zakresu [0, 2 32 -1]. Użyj klasy Integer, aby użyć typu danych int jako liczby całkowitej bez znaku.

5. Długi typ danych

Zasięg długiego jest dość duży. Długi typ danych to 64-bitowa liczba całkowita z uzupełnieniem do dwóch i jest przydatna w sytuacjach, gdy typ int nie jest wystarczająco duży, aby pomieścić żądaną wartość. Rozmiar długiego typu danych wynosi 8 bajtów (64 bity).

Składnia:

long longVar; 

Pamiętać: W Javie SE 8 i nowszych typach danych long można używać do reprezentowania 64-bitowego typu danych bez znaku, którego minimalna wartość wynosi 0, a maksymalna wartość to 2 64 -1. Klasa Long zawiera również metody, takie jak porównywanie Unsigned, dzielenie Unsigned itp., Aby obsługiwać operacje arytmetyczne na długości bez znaku.

6. Typ danych pływających

Typ danych zmiennoprzecinkowych to 32-bitowy typ zmiennoprzecinkowy IEEE 754 o pojedynczej precyzji. Użyj float (zamiast double), jeśli chcesz zaoszczędzić pamięć w dużych tablicach liczb zmiennoprzecinkowych. Rozmiar typu danych float wynosi 4 bajty (32 bity).

Składnia:

float floatVar; 

7. Podwójny typ danych

Typ danych double to 64-bitowy typ zmiennoprzecinkowy IEEE 754 o podwójnej precyzji. W przypadku wartości dziesiętnych ten typ danych jest zazwyczaj wyborem domyślnym. Rozmiar podwójnego typu danych wynosi 8 bajtów lub 64 bity.

Składnia:

double doubleVar; 

Notatka: Zarówno typy danych float, jak i double zostały zaprojektowane specjalnie do obliczeń naukowych, gdzie dopuszczalne są błędy aproksymacji. Jeśli dokładność jest najważniejsza, zaleca się, aby nie używać tych typów danych i zamiast tego używać klasy BigDecimal.

Zaleca się przejść zaokrąglanie błędów w Javie.

8. Typ danych Char

Typ danych char to pojedynczy 16-bitowy znak Unicode o rozmiarze 2 bajtów (16 bitów).

Składnia:

char charVar; 

Dlaczego rozmiar znaku wynosi 2 bajty w Javie?

Tak więc inne języki, takie jak C/C++, używają tylko znaków ASCII, a do reprezentowania wszystkich znaków ASCII wystarczy 8 bitów. Ale Java używa System Unicode, a nie system kodu ASCII i do reprezentowania systemu Unicode 8 bitów nie wystarczy do przedstawienia wszystkich znaków, dlatego Java używa 2 bajtów na znaki. Unikod definiuje w pełni międzynarodowy zestaw znaków, który może reprezentować większość języków pisanych świata. Jest to ujednolicenie kilkudziesięciu zestawów znaków, takich jak łaciński, grecki, cyrylica, katakana, arabski i wiele innych.

Przykład:

Jawa




// Java Program to Demonstrate Char Primitive Data Type> // Class> class> GFG {> > // Main driver method> > public> static> void> main(String args[])> > {> > // Creating and initializing custom character> > char> a => 'G'> ;> > // Integer data type is generally> > // used for numeric values> > int> i => 89> ;> > // use byte and short> > // if memory is a constraint> > byte> b => 4> ;> > // this will give error as number is> > // larger than byte range> > // byte b1 = 7888888955;> > short> s => 56> ;> > // this will give error as number is> > // larger than short range> > // short s1 = 87878787878;> > // by default fraction value> > // is double in java> > double> d => 4.355453532> ;> > // for float use 'f' as suffix as standard> > float> f => 4> .7333434f;> > // need to hold big range of numbers then we need> > // this data type> > long> l => 12121> ;> > System.out.println(> 'char: '> + a);> > System.out.println(> 'integer: '> + i);> > System.out.println(> 'byte: '> + b);> > System.out.println(> 'short: '> + s);> > System.out.println(> 'float: '> + f);> > System.out.println(> 'double: '> + d);> > System.out.println(> 'long: '> + l);> > }> }>

Wyjście

char: G integer: 89 byte: 4 short: 56 float: 4.7333436 double: 4.355453532 long: 12121 

Nieprymitywny typ danych lub referencyjne typy danych

The Referencyjne typy danych będzie zawierać adres pamięci wartości zmiennych, ponieważ typy referencyjne nie przechowują wartości zmiennych bezpośrednio w pamięci. Są to ciągi znaków, obiekty, tablice itp.

1. Struny

Smyczki są zdefiniowane jako tablica znaków. Różnica między tablicą znaków a ciągiem znaków w Javie polega na tym, że ciąg znaków przeznaczony jest do przechowywania sekwencji znaków w jednej zmiennej, podczas gdy tablica znaków to zbiór oddzielnych jednostek typu char. W przeciwieństwie do C/C++, ciągi znaków Java nie są zakończone znakiem null.

Składnia: Deklarowanie ciągu

 = ; 

Przykład:

// Declare String without using new operator  String s = 'techcodeview.com';  // Declare String using new operator  String s1 = new String('techcodeview.com'); 

2. Klasa

A klasa to zdefiniowany przez użytkownika projekt lub prototyp, na podstawie którego tworzone są obiekty. Reprezentuje zestaw właściwości lub metod wspólnych dla wszystkich obiektów jednego typu. Ogólnie rzecz biorąc, deklaracje klas mogą zawierać te komponenty w następującej kolejności:

  1. Modyfikatory : Klasa może być publiczna lub mieć dostęp domyślny. Odnosić się do specyfikatory dostępu dla klas lub interfejsów w Javie
  2. Nazwa klasy: Imię powinno zaczynać się od pierwszej litery (zgodnie z konwencją pisanej wielką literą).
  3. Nadklasa (jeśli istnieje): Nazwa rodzica klasy (nadklasy), jeśli istnieje, poprzedzona słowem kluczowym rozciąga się. Klasa może rozszerzać (podklasę) tylko jednego rodzica.
  4. Interfejsy (jeśli występują): Rozdzielana przecinkami lista interfejsów zaimplementowanych przez klasę, jeśli istnieje, poprzedzona słowem kluczowym implements. Klasa może implementować więcej niż jeden interfejs.
  5. Ciało: Treść klasy jest otoczona nawiasami klamrowymi { }.

3. Obiekt

Jakiś Obiekt jest podstawową jednostką programowania obiektowego i reprezentuje byty z życia codziennego. Typowy program w Javie tworzy wiele obiektów, które jak wiadomo oddziałują na siebie poprzez wywoływanie metod. Obiekt składa się z:

  1. Państwo : Jest reprezentowany przez atrybuty obiektu. Odzwierciedla także właściwości obiektu.
  2. Zachowanie : Jest reprezentowany przez metody obiektu. Odzwierciedla także reakcję obiektu na inne obiekty.
  3. Tożsamość : Nadaje obiektowi unikalną nazwę i umożliwia interakcję jednego obiektu z innymi obiektami.

4. Interfejs

Podobnie jak klasa, np interfejs może mieć metody i zmienne, ale metody zadeklarowane w interfejsie są domyślnie abstrakcyjne (tylko sygnatura metody, bez treści).

  • Interfejsy określają, co klasa musi zrobić, a nie jak. To jest plan zajęć.
  • Interfejs dotyczy możliwości takich jak Player może być interfejsem i każda klasa implementująca Player musi być w stanie (lub musi implementować) move(). Określa zatem zestaw metod, które klasa musi zaimplementować.
  • Jeśli klasa implementuje interfejs i nie udostępnia treści metod dla wszystkich funkcji określonych w interfejsie, wówczas klasę należy zadeklarować jako abstrakcyjną.
  • Przykładem biblioteki Java jest Interfejs komparatora . Jeśli klasa implementuje ten interfejs, można go użyć do sortowania kolekcji.

5. Tablica

Jakiś Szyk to grupa zmiennych o podobnym typie, do których odnosi się wspólna nazwa. Tablice w Javie działają inaczej niż w C/C++. Poniżej przedstawiono kilka ważnych punktów dotyczących tablic Java.

  • W Javie wszystkie tablice są przydzielane dynamicznie. (omówione poniżej)
  • Ponieważ tablice są obiektami w Javie, ich długość możemy znaleźć na podstawie długości elementu. Różni się to od C/C++, gdzie długość znajdujemy za pomocą rozmiaru.
  • Zmienną tablicową Java można również zadeklarować, podobnie jak inne zmienne, za pomocą [] po typie danych.
  • Zmienne w tablicy są uporządkowane i każda ma indeks rozpoczynający się od 0.
  • Tablicy Java można również używać jako pola statycznego, zmiennej lokalnej lub parametru metody.
  • The rozmiar tablicy musi być określona przez wartość int, a nie jako długą lub krótką.
  • Bezpośrednią nadklasą typu tablicowego jest Object.
  • Każdy typ tablicy implementuje interfejsy Możliwość klonowania I Możliwość serializacji java.io .

Często zadawane pytania dotyczące typów danych w Javie

1. Jakie są typy danych w Javie?

Typy danych mają różne rozmiary i wartości, które można przechowywać w zmiennej utworzonej zgodnie z wygodą i okolicznościami, aby uwzględnić wszystkie przypadki testowe.

2. Jakich 8 typów danych używa się w Javie?

W Javie istnieje 8 głównych prymitywnych typów danych, jak wspomniano poniżej:

  • wartość logiczna
  • bajt
  • zwęglać
  • krótki
  • wew
  • długi
  • platforma
  • podwójnie

3. Jaki jest typ pierwotny w Javie?

Pierwotne typy danych to typy w języku Java, które mogą przechowywać pojedynczą wartość i nie zapewniają żadnych specjalnych możliwości.

4. Dlaczego znak używa 2 bajtów w Javie i co to jest u0000?

Char używa 2 bajtów w Javie, ponieważ używa systemu Unicode, a nie systemu ASCII. u000 to najniższy zakres systemu Unicode.

Wymeldować się: Quiz na temat typów danych w Javie



Najpopularniejsze Artykuły

Kategoria

Ciekawe Artykuły