Jak używać typów generycznych w Javie

Dzisiaj zobaczymy jak używać typów generycznych w java. Jest to coś ciekawego, ponieważ pozwoli nam pisać funkcje działające dowolnego typu, nie będzie miało znaczenia czy przekażemy liczby całkowite, łańcuchy, ułamki dziesiętne itp. Java pozwoli nam również na tworzenie klas generycznych, a nie tylko funkcji.

NotatkaGeneric nie można używać z typami pierwotnymi, takimi jak int, zwęglaćitp.

Zobaczymy kilka przykładów, najpierw klasę generyczną, a na końcu funkcję, przykłady są dość proste, dzięki czemu łatwiej je zrozumieć.

1. Klasa ogólna w Javie


Pierwszą rzeczą, którą zobaczymy, jest kompletny kod, a poniżej krótko go wyjaśnimy na wypadek, gdyby kod nie został zrozumiany.
 public class GenericClass {prywatny element T; public GenericClass (T e) {element = e; } public T getElement () {element zwrotny; } public static void main (args String []) {GenericClass cg1 = new GenericClass (1); System.out.println ("cg1 >>" + cg1.getElement ()); GenericClass cg2 = new GenericClass („Witaj”); System.out.println ("cg2 >>" + cg2.getElement ()); }}
Zobaczmy najpierw deklarację klasy, widać, że po nazwie klasy mamy , wskazuje, że jest to klasa ogólna, T może być ciągiem, liczbą całkowitą itp. Kiedy nadejdzie czas, zostanie zastąpiony prawdziwym typem.

Mamy zmienną o nazwie element, która pochodzi od typ T (tj. rodzajowy). W konstruktorze wypełnimy tę zmienną danymi, które nam przekazują, również typu T logicznie.

Przed dotarciem do głównego tworzymy funkcję do uzyskania elementu, a więc zwraca typ T, ta klasa nie byłaby potrzebna, ponieważ kod jest, moglibyśmy wywołać element bezpośrednio, ale abyś zobaczył typ zwracany funkcja, nie jest skończona.

W głównym, wszystko, co zrobimy, to utworzymy 2 obiekty tej klasy, pierwszy z Typ liczb całkowitych i drugi z Typ ciągu i pokazujemy element, aby zobaczyć, że działa poprawnie.

Jeśli skompilujemy i wykonamy kod, zobaczymy:

2. Ogólna funkcja w Javie


Zobaczymy teraz funkcję generyczną, tak jak poprzednio, pierwszą rzeczą, której się uczymy, jest kompletny kod, który zostanie wyjaśniony później.
 import java.util.ArrayList; public class Generics {public static void show (input ArrayList) {input.stream ().forEach ((element) -> {System.out.print (element + "");}); System.out.println ("\ n"); } public static void main (String args []) {ArrayList list1 = new ArrayList (); for (int i = 1; i <= 6; i ++) {list1.add (i); } ArrayList lista2 = new ArrayList () {{dodaj ("to"); dodaj ("jest"); dodać"); dodaj („test”); }}; System.out.println ("--- Używając ArrayList liczb całkowitych ---"); pokaż (lista1); System.out.println ("--- Używając ArrayList z ciągów ---"); pokaż (lista2); }}
Mamy funkcję o nazwie show, która odbiera Lista tablic dowolnego rodzaju i przejdzie przez nią, wyświetlając swoje dane. Wewnątrz głównej tworzymy dwa Lista tablic, jeden typu Integer, a drugi typu Strunowy, inicjujemy je pewnymi danymi, aby wykonać test. I w końcu nazywamy pokaż funkcję dla każdej ArrayList, aby sprawdzić, czy działa poprawnie.

Jeśli skompilujemy i wykonamy, zobaczymy:

Tu samouczek się kończy, widziałeś, jak łatwo jest w Javie korzystać z danych generycznych, a tym samym mieć klasy, które można ponownie wykorzystać do różnych typów obiektów. Na przykład, jeśli chcemy mieć kod przechowujący faktury i inny przechowujący dane klientów, możemy użyć generyków, mających tylko jedną klasę.

Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave