Hur man använder generiska typer i Java

Idag ska vi se hur man använder generiska typer i java. Det är något intressant, eftersom det tillåter oss att skriva funktioner som fungerar av vilken typ som helst, det spelar ingen roll om vi passerar heltal, strängar, decimaler etc. Java kommer också att tillåta oss att skapa generiska klasser, inte bara funktioner.

NoteraGenerika kan inte användas med primitiva typer, t.ex. int, röding, etc.

Vi kommer att se ett par exempel, först en generisk klass och slutligen en funktion, exemplen är ganska enkla så att de är lättare att förstå.

1. Generisk klass i Java


Det första vi kommer att se är den fullständiga koden, och nedanför kommer vi att kort förklara den om koden inte förstås.
 public class GenericClass {privat T -element; public GenericClass (T e) {element = e; } public T getElement () {return element; } public static void main (String args []) {GenericClass cg1 = new GenericClass (1); System.out.println ("cg1 >>" + cg1.getElement ()); GenericClass cg2 = ny GenericClass ("Hej"); System.out.println ("cg2 >>" + cg2.getElement ()); }}
Låt oss se klassdeklarationen först, du kan se att efter klassnamnet vi har , indikerar att det är en generisk klass, T kan vara en sträng, ett heltal etc. Den kommer att ersättas av en riktig typ när den tid kommer.

Vi har en variabel som kallas element, som är från typ T (dvs. generisk). I konstruktören kommer vi att fylla denna variabel med data som de passerar oss, också av typen T logiskt.

Innan vi når huvudet skapar vi en funktion för att få elementet, så det returnerar en typ T, den här klassen skulle inte vara nödvändig, eftersom koden är kan vi ringa elementet direkt, men för att du ska se returtypen för funktion, nej är över.

Inne i huvudet är allt vi ska göra att skapa 2 objekt av den klassen, det första av Heltalstyp och den andra av Typ av sträng och vi visar elementet för att se att det fungerar korrekt.

Om vi ​​sammanställer och kör koden ser vi följande:

2. Generisk funktion i Java


Vi kommer nu att se en generisk funktion, som tidigare, det första som lärs ut är den fullständiga koden och den förklaras senare.
 importera 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 (); för (int i = 1; i <= 6; i ++) {list1.add (i); } ArrayList list2 = ny ArrayList () {{add ("detta"); add ("är"); Lägg till en"); add ("test"); }}; System.out.println ("--- Använd ArrayList av heltal ---"); visa (lista1); System.out.println ("--- Using ArrayList of Strings ---"); visa (lista2); }}
Vi har en funktion som heter show som tar emot en ArrayList av något slag och det kommer att gå igenom det och visa sina data. Inne i huvudet skapar vi två ArrayList, en av typen Heltal och en annan av typen Sträng, vi initierar dem med lite data för att göra testet. Och slutligen ringer vi till visa funktion för varje ArrayList att verifiera att den fungerar korrekt.

Om vi ​​kompilerar och kör ser vi följande:

Här slutar handledningen, du har sett hur enkelt det är i Java att använda generiska data, och därmed kunna ha klasser som kan återanvändas för olika typer av objekt. Om vi ​​till exempel vill ha en kod som lagrar fakturor och en annan som lagrar kunddata, kan vi använda generiken med bara en klass.

Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave