Arrays in Java verschillen qua implementatie en gebruik in vergelijking met die in C/C++, hoewel ze ook veel overeenkomsten hebben. Hier zullen we bespreken hoe u een array in Java kunt retourneren.
Om een array in Java te retourneren, moeten we voor de volgende punten zorgen:
Kernpunt 1: De methode die de array retourneert, moet het retourtype hebben als een array van hetzelfde gegevenstype als dat van de array die wordt geretourneerd. Het retourtype kan ook de gebruikelijke Integer-, Double-, Character-, String- of door de gebruiker gedefinieerde klasseobjecten zijn.
// Method returning an integer array. int[] methodName() {...}> // Method returning a String array. String[] methodName() {...}> // Method returning an array of objects of class named Students. Students[] methodName() {...}> Kernpunt 2: Toegangsmodificatoren moeten nauwkeurig worden gebruikt, rekening houdend met het gebruik van de methode en de terugkerende array. Er moet ook rekening worden gehouden met statische en niet-statische aangiften.
// Using public access modifier and static to call the method from a static class, method or block. public static char[] methodName() {...}> Kernpunt 3: Er moet een variabele array van hetzelfde gegevenstype of iets soortgelijks aanwezig zijn bij de methodeaanroep om de geretourneerde array af te handelen. Een array met gehele getallen die door een willekeurige methode wordt geretourneerd, kan bijvoorbeeld als volgt worden opgeslagen.
int[] storage = methodReturningArray();>
Implementatie:
Om dit beter te begrijpen, kunnen we enkele verschillende soorten scenario's onderzoeken waarin we mogelijk arrays retourneren. Hier zullen we drie voorbeelden voor scenario's bekijken.
- Geval 1: eenvoudige ingebouwde arrays
- Geval 2: Array van objecten
- Geval 3: Multidimensionale arrays retourneren
Zaak 1: Retourneert een array met gehele getallen (ingebouwd gegevenstype) in Java
tekenreeks naar int converteren
De array van elk ingebouwd gegevenstype kan geheel getal, karakter, float, double all zijn en kan eenvoudig worden geretourneerd met behulp van return-statements, rekening houdend met de hierboven genoemde punten.
Voorbeeld
Java
// Java Program to Illustrate Returning> // simple built-in arrays> // Importing input output classes> import> java.io.*;> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// An integer array storing the returned array> >// from the method> >int>[] storage = methodReturningArray();> >// Printing the elements of the array> >for> (>int> i =>0>; i System.out.print(storage[i] + ' '); } // Method 2 // Returning an integer array public static int[] methodReturningArray() { int[] sample = { 1, 2, 3, 4 }; // Return statement of the method. return sample; } }> |
cast in naar string java
>
>Uitvoer
1 2 3 4>
Geval 2: Een array met objecten retourneren in Java
Dit gebeurt op precies dezelfde manier in het geval van het retourneren van arrays met ingebouwde gegevenstypen.
Voorbeeld
Java
// Java Program to Illustrate Returning> // an array of objects in java> // Importing all input output classes> import> java.io.*;> // Class 1> // Helper class> // Courses whose objects are returned as an array> class> Courses {> >String name;> >int> modules;> >// Constructor to instantiate class objects.> >public> Courses(String n,>int> m)> >{> >// This keyword refers to current instance itself> >this>.name = n;> >this>.modules = m;> >}> }> // Class 2> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// Calling the method for returning an array of> >// objects of the Courses class.> >Courses[] sample = methodReturningArray();> >// Printing the returned array elements.> >for> (>int> i =>0>; i System.out.print(sample[i].name + ' - ' + sample[i].modules + ' modules
'); } // Method 2 // Note that return type is an array public static Courses[] methodReturningArray() { // Declaring Array of objects of the Courses class Courses[] arr = new Courses[4]; // Custom array of objects arr[0] = new Courses('Java', 31); arr[1] = new Courses('C++', 26); arr[2] = new Courses('DSA', 24); arr[3] = new Courses('DBMS', 12); // Statement to return an array of objects return arr; } }> |
>
>Uitvoer
Java - 31 modules C++ - 26 modules DSA - 24 modules DBMS - 12 modules>
Geval 3: Multidimensionale arrays retourneren
Multidimensionale arrays in Java kan worden gezegd dat het een array van arrays binnen arrays is. De eenvoudigste vorm kan een tweedimensionale array zijn. Ze hebben hun maten en verklaringen op basis van hun maten. Hier wordt hieronder de terugkeer van een tweedimensionale array gedemonstreerd, die een zeer vergelijkbare benadering heeft als de eendimensionale arrays.
panda's en numpy
Voorbeeld
Java
// Java Program to Illustrate Returning> // Multi-dimensional Arrays> // Importing input output classes> import> java.io.*;> // Main class> class> GFG {> >// Method 1> >// Main driver method> >public> static> void> main(String[] args)> >{> >// An integer 2D array storing the> >// returned array from the method> >int>[][] storage = methodReturningArray();> >// Printing the elements of the array> >// using nested for loops> >for> (>int> i =>0>; i for (int j = 0; j 0].length; j++) System.out.print(storage[i][j] + ' '); System.out.println(); } } // Method 2 // Returning an integer array public static int[][] methodReturningArray() { // Custom 2D integer array int[][] sample = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; // Return statement of the method return sample; } }> |
>
>Uitvoer
1 2 3 4 5 6 7 8 9>