logo

Hoe maak je een array van objecten in Java?

Voorwaarde – Verschillende manieren om objecten in Java te maken

Java-programmeertaal draait helemaal om klassen en objecten zoals het is een objectgeoriënteerde programmeertaal . Wanneer we één enkel object nodig hebben om in ons programma op te slaan, doen we dat met een variabele van het type Object. Maar als we met meerdere objecten te maken hebben, verdient het de voorkeur om een ​​array van objecten te gebruiken.



De naam Array of Objects zelf suggereert dat het een array van objecten opslaat. In tegenstelling tot de traditionele array worden waarden zoals String, integer, Boolean, enz. Opgeslagen Reeks objecten winkels voorwerpen dat betekent dat objecten worden opgeslagen als elementen van een array. Merk op dat wanneer we zeggen Reeks objecten het is niet het object zelf dat in de array wordt opgeslagen, maar de referentie van het object.

Een reeks objecten maken in Java –

Er wordt een array van objecten gemaakt met behulp van de Objectklasse , en we weten dat de Object-klasse de hoofdklasse is van alle klassen.



Wij gebruiken de Naam van de klasse gevolgd door een vierkante haak [] en vervolgens de objectreferentienaam om een ​​array van objecten te maken.

Class_Name[ ] objectArrayReference;>

Als alternatief kunnen we een array van objecten ook declareren als:

Class_Name objectArrayReference[ ];>

Beide bovenstaande verklaringen impliceren dat objectArrayReferentie is een array van objecten.



Als u bijvoorbeeld een klasse Student heeft, kunnen we een array met Student-objecten maken, zoals hieronder weergegeven:

kaart java-iterator
Student[ ] studentObjects; Or Student studentObjects[];>

Instantieer de reeks objecten –

Syntaxis:

Class_Name obj[ ]= new Class_Name[Array_Length];>

Als je bijvoorbeeld een klasse Student hebt, en we willen een array van Student-objecten declareren en instantiëren met twee objecten/objectreferenties, dan wordt dit geschreven als:

Student[ ] studentObjects = new Student[2];>

En zodra een reeks objecten op deze manier is geïnstantieerd, moeten de afzonderlijke elementen van de reeks objecten worden gemaakt met behulp van het nieuwe trefwoord.

De onderstaande afbeelding toont de structuur van een reeks objecten:

Initialiseren van een reeks objecten

Zodra de array met objecten is geïnstantieerd, moeten we deze initialiseren met waarden. We kunnen de array niet initialiseren op de manier waarop we initialiseren met primitieve typen, omdat deze verschilt van een array met primitieve typen. In een array met objecten moeten we elk element van de array initialiseren, dat wil zeggen dat elke object-/objectreferentie moet worden geïnitialiseerd.

Verschillende manieren om de array met objecten te initialiseren:

Rudyard Kipling als uitleg
  1. Door gebruik te maken van de constructeurs
  2. Door een afzonderlijke lidmethode te gebruiken

1. Door de constructor te gebruiken:

Op het moment dat we daadwerkelijke objecten maken, kunnen we beginwaarden aan elk van de objecten toewijzen door waarden door te geven aan de bouwer afzonderlijk. Individuele werkelijke objecten worden gemaakt met hun verschillende waarden.

Het onderstaande programma laat zien hoe de array met objecten wordt geïnitialiseerd met behulp van de constructor.

Java


abc met cijfers



// Java program to demonstrate initializing> // an array of objects using constructor> class> GFG {> >public> static> void> main(String args[])> >{> >// Declaring an array of student> >Student[] arr;> >// Allocating memory for 2 objects> >// of type student> >arr =>new> Student[>2>];> >// Initializing the first element> >// of the array> >arr[>0>] =>new> Student(>1701289270>,>'Satyabrata'>);> >// Initializing the second element> >// of the array> >arr[>1>] =>new> Student(>1701289219>,>'Omm Prasad'>);> >// Displaying the student data> >System.out.println(> >'Student data in student arr 0: '>);> >arr[>0>].display();> >System.out.println(> >'Student data in student arr 1: '>);> >arr[>1>].display();> >}> }> // Creating a student class with> // id and name as a attributes> class> Student {> >public> int> id;> >public> String name;> >// Student class constructor> >Student(>int> id, String name)> >{> >this>.id = id;> >this>.name = name;> >}> >// display() method to display> >// the student data> >public> void> display()> >{> >System.out.println(>'Student id is: '> + id +>' '> >+>'and Student name is: '> >+ name);> >System.out.println();> >}> }>

>

>

Uitvoer

Student data in student arr 0: Student id is: 1701289270 and Student name is: Satyabrata Student data in student arr 1: Student id is: 1701289219 and Student name is: Omm Prasad>

2. Door een afzonderlijke ledenmethode te gebruiken:

Door een afzonderlijke lidmethode te gebruiken, kunnen we ook objecten initialiseren. A lid functie van de betreffende klasse wordt gemaakt en die wordt gebruikt om de initiële waarden aan de objecten toe te wijzen.

Het onderstaande programma laat zien hoe de array met objecten wordt geïnitialiseerd met behulp van een afzonderlijke lidmethode.

Java


laatste commit ongedaan maken



// Java program to demonstrate initializing> // an array of objects using a method> class> GFG {> >public> static> void> main(String args[])> >{> >// Declaring an array of student> >Student[] arr;> >// Allocating memory for 2 objects> >// of type student> >arr =>new> Student[>2>];> >// Creating actual student objects> >arr[>0>] =>new> Student();> >arr[>1>] =>new> Student();> >// Assigning data to student objects> >arr[>0>].setData(>1701289270>,>'Satyabrata'>);> >arr[>1>].setData(>1701289219>,>'Omm Prasad'>);> >// Displaying the student data> >System.out.println(> >'Student data in student arr 0: '>);> >arr[>0>].display();> >System.out.println(> >'Student data in student arr 1: '>);> >arr[>1>].display();> >}> }> // Creating a Student class with> // id and name as a attributes> class> Student {> >public> int> id;> >public> String name;> >// Method to set the data to> >// student objects> >public> void> setData(>int> id, String name)> >{> >this>.id = id;> >this>.name = name;> >}> >// display() method to display> >// the student data> >public> void> display()> >{> >System.out.println(>'Student id is: '> + id +>' '> >+>'and Student name is: '> >+ name);> >System.out.println();> >}> }>

>

>

java samenvoegen
Uitvoer

Student data in student arr 0: Student id is: 1701289270 and Student name is: Satyabrata Student data in student arr 1: Student id is: 1701289219 and Student name is: Omm Prasad>

Laten we nog een voorbeeld bekijken waarin een array van objecten wordt gedeclareerd met initiële waarden:

Hier declaratie van een array van objecten gebeurt door initiële waarden toe te voegen.

Java




// Java program to demonstrate an array> // of objects is declared with initial values.> class> GFG {> >public> static> void> main(String args[])> >{> >// Creating an array of objects> >// declared with initial values> >Object[] javaObjectArray> >= {>'Maruti'>,>new> Integer(>2019>),>'Suzuki'>,> >new> Integer(>2019>) };> >// Printing the values> >System.out.println(javaObjectArray[>0>]);> >System.out.println(javaObjectArray[>1>]);> >System.out.println(javaObjectArray[>2>]);> >System.out.println(javaObjectArray[>3>]);> >}> }>

>

>

Uitvoer

Maruti 2019 Suzuki 2019>