array objects java
I denna Java-handledning kan du lära dig att skapa, initiera, sortera objektmatrisen i Java med fullständiga kodexempel:
Vad är en uppsättning objekt?
Som vi alla vet handlar Java-programmeringsspråket om objekt eftersom det är ett objektorienterat programmeringsspråk.
Om du vill lagra ett enda objekt i ditt program kan du göra det med hjälp av en variabel av typen objekt. Men när du har att göra med många objekt, är det tillrådligt att använda en mängd objekt.
=> Kolla in den perfekta Java-träningsguiden här.
Java kan lagra objekt som element i arrayen tillsammans med andra primitiva och anpassade datatyper. Observera att när du säger ”array of objects” är det inte själva objektet som lagras i arrayen utan referenserna för objektet.
I denna handledning kommer du att bekanta dig med skapandet, initialiseringen, sorteringen samt exempel på arrayen av objekt i Java.
Vad du kommer att lära dig:
programvara som är installerad på en dator och används för att hantera virtuella maskiner
Hur man skapar en uppsättning objekt i Java?
En matris med objekt skapas med hjälp av klassen ”Objekt”.
Följande uttalande skapar en Array of Objects.
Class_name () objArray;
Alternativt kan du också deklarera en Array of Objects enligt nedan:
Class_nameobjArray();
Båda ovanstående förklaringar antyder att objArray är en uppsättning objekt.
Så om du har en klass 'Anställd' kan du skapa en uppsättning medarbetarobjekt enligt nedan:
Employee() empObjects; OR Employee empObjects();
Deklarationerna för uppsättningen objekt ovan måste instansieras med hjälp av ”nytt” innan de används i programmet.
Du kan förklara och instansera arrayen av objekt som visas nedan:
Employee() empObjects = new Employee(2);
Notera att när en matris med objekt har installerats som ovan, måste de enskilda elementen i arrayen av objekt skapas med hjälp av nya.
Ovanstående uttalande skapar en uppsättning objekt 'empObjects' med två element / objektreferenser.
Initiera Array Of Objects
När matrisen med objekt är instanserad måste du initiera den med värden. Eftersom arrayen av objekt skiljer sig från en array med primitiva typer kan du inte initialisera arrayen på samma sätt som med primitiva typer.
När det gäller en array med objekt måste varje element i arrayen, dvs. ett objekt, initieras. Vi har redan diskuterat att en rad objekt innehåller referenser till de faktiska klassobjekten. Således, när matrisen av objekt deklareras och instantieras, måste du skapa faktiska objekt i klassen.
Ett sätt att initiera arrayen av objekt är att använda konstruktörerna. När du skapar faktiska objekt kan du tilldela initialvärden till vart och ett av objekten genom att skicka värden till konstruktören. Du kan också ha en separat medlemsmetod i en klass som tilldelar data till objekten.
Följande program visar initialiseringen av array-objekt med hjälp av konstruktorn.
Här har vi använt klassen Anställd. Klassen har en konstruktör som tar in två parametrar, dvs. anställds namn och anställds ID. I huvudfunktionen, efter att en rad anställda har skapats, går vi vidare och skapar enskilda objekt för klassanställd.
Sedan skickar vi initialvärden till vart och ett av objekten med hjälp av konstruktorn.
Programmets resultat visar innehållet i varje objekt som initialiserades tidigare .
class Main{ public static void main(String args()){ //create array of employee object Employee() obj = new Employee(2) ; //create & initialize actual employee objects using constructor obj(0) = new Employee(100,'ABC'); obj(1) = new Employee(200,'XYZ'); //display the employee object data System.out.println('Employee Object 1:'); obj(0).showData(); System.out.println('Employee Object 2:'); obj(1).showData(); } } //Employee class with empId and name as attributes class Employee{ int empId; String name; //Employee class constructor Employee(inteid, String n){ empId = eid; name = n; } public void showData(){ System.out.print('EmpId = '+empId + ' ' + ' Employee Name = '+name); System.out.println(); } }
Produktion:
Exempelprogrammet som vi har gett nedan visar en medlemsfunktion i medarbetarklassen som används för att tilldela de ursprungliga värdena till anställdobjekten.
Exempel på program för en rad objekt i Java
Givet är ett komplett exempel som visar en rad objekt i Java.
I det här programmet har vi en anställdsklass som har medarbetar-ID (empId) och anställds namn (namn) som fält och 'setData' och 'showData' som metoder som tilldelar data till anställdsobjekt och visar innehållet i anställdsobjekt.
I programmets huvudmetod definierar vi först en uppsättning medarbetarobjekt. Observera att detta är en uppsättning referenser och inte faktiska objekt. Sedan använder vi standardkonstruktören och skapar faktiska objekt för klassen Anställd. Därefter tilldelas objekten data med setData-metoden.
Slutligen åberopar objekt showData-metoden för att visa innehållet i klassobjekten för anställda.
class Main{ public static void main(String args()){ //create array of employee object Employee() obj = new Employee(2) ; //create actual employee object obj(0) = new Employee(); obj(1) = new Employee(); //assign data to employee objects obj(0).setData(100,'ABC'); obj(1).setData(200,'XYZ'); //display the employee object data System.out.println('Employee Object 1:'); obj(0).showData(); System.out.println('Employee Object 2:'); obj(1).showData(); } } //Employee class with empId and name as attributes class Employee{ int empId; String name; public void setData(intc,String d){ empId=c; name=d; } public void showData(){ System.out.print('EmpId = '+empId + ' ' + ' Employee Name = '+name); System.out.println(); } }
Produktion:
Hur sorterar jag en rad objekt i Java?
Liksom en uppsättning primitiva typer kan en uppsättning objekt också sorteras med hjälp av 'sorteringsmetoden' i Arrays-klassen.
Men skillnaden är att den klass som objekten tillhör ska implementera det 'jämförbara' gränssnittet så att matrisen av objekt sorteras. Du måste också åsidosätta 'jämförTo'-metoden som avgör fältet där matrisen ska sorteras. Objektmatrisen sorteras i stigande ordning som standard.
Följande program visar sorteringen av en uppsättning objekt. Vi har använt en anställdsklass för detta ändamål och matrisen sorteras utifrån medarbetar-id (empId).
import java.util.*; //employee class implementing comparable interface for array of objects class Employee implements Comparable { private String name; privateint empId; //constructor public Employee(String name, int empId) { this.name = name; this.empId = empId; } public String getName() { return name; } publicintgetempId() { return empId; } //overridden functions since we are working with array of objects @Override public String toString() { return '{' + 'name='' + name + ''' + ', EmpId=' + empId + '}'; } //compareTo method overridden for sorting array of objects @Override publicint compareTo(Employee o) { if (this.empId != o.getempId()) { returnthis.empId - o.getempId(); } returnthis.name.compareTo(o.getName()); } } //main class class Main { public static void main(String() args) { //array of Employee objects Employee() employees = { new Employee('Rick', 1), new Employee('Sam', 20), new Employee('Adi', 5), new Employee('Ben', 10) }; //print original array System.out.println('Original Array of Employee objects:'); System.out.println(Arrays.toString(employees)); //sort array on empId Arrays.sort(employees); //display sorted array System.out.println('
Sorted Array of Employee objects:'); System.out.println(Arrays.toString(employees)); } }
Produktion:
Observera att i ovanstående program implementerar medarbetarklassen jämförbart gränssnitt. För det andra åsidosätts metoden comparTo för att sortera den givna matrisen av objekt i empId-fältet.
Metoden 'toString' åsidosätts också för att underlätta omvandlingen av arrayen av objekt till en sträng.
Vanliga frågor
F # 1) Kan du ha en array med objekt i Java?
Svar: Ja. Java kan ha en rad objekt precis som hur den kan ha en uppsättning primitiva typer.
F # 2) Vad är en array av objekt i Java?
Svar: I Java är en matris ett dynamiskt skapat objekt som kan ha element som är primitiva datatyper eller objekt. Matrisen kan tilldelas variabler som är av typobjekt.
F # 3) Hur sorterar du objekt i Java?
Svar: För att sortera objekt i Java måste vi implementera 'Comparable' -gränssnittet och åsidosätta 'comparTo' -metoden enligt ett visst fält. Sedan kan vi använda metoden 'Arrays.sort' för att sortera en uppsättning objekt.
F # 4) Hur sorterar du objekt i ArrayList?
Svar: ArrayList kan sorteras med metoden Collections.sort () direkt. Metoden Collections.sort () sorterar elementen naturligt i stigande ordning.
Slutsats
I denna handledning diskuterade vi ämnet ”Array of Objects” tillsammans med de olika delämnena relaterade till en rad objekt. Vi såg exempel på initialisering och sortering av en rad objekt.
För att sortera den klass vars objekt ska sorteras bör implementera gränssnittet 'Jämförbart' och även åsidosätta metoden 'jämför till'. För att skriva ut innehållet i ”Array of objects” bör vi också åsidosätta metoden ”toString” så att vi kan skriva allt innehåll i varje objekt.
=> Besök här för att se Java Training Series för alla.
Rekommenderad läsning
- Java Array - Förklara, skapa och initialisera en array i Java
- Java Array Length Tutorial With Code Exempel
- Java Array - Hur man skriver ut delar av en array i Java?
- Java Generic Array - Hur man simulerar generiska arrays i Java?
- Java Hello World - Skapa ditt första program i Java idag
- Flerdimensionella arrayer i Java (2d och 3d arrays i Java)
- Java-gränssnitt och abstrakt klasshandledning med exempel
- JAVA-handledning för nybörjare: 100+ praktiska Java-videohandledning