Arrays in Java unterscheiden sich in Implementierung und Verwendung von denen in C/C++, obwohl sie auch viele Ähnlichkeiten aufweisen. Hier besprechen wir, wie man ein Array in Java zurückgibt.
Um ein Array in Java zurückzugeben, müssen wir die folgenden Punkte beachten:
Kernpunkt 1: Die Methode, die das Array zurückgibt, muss als Rückgabetyp ein Array mit demselben Datentyp wie das zurückgegebene Array haben. Der Rückgabetyp kann auch der übliche Typ „Integer“, „Double“, „Character“, „String“ oder auch benutzerdefinierte Klassenobjekte sein.
// 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() {...}> Kernpunkt 2: Zugriffsmodifikatoren müssen unter Berücksichtigung der Verwendung der Methode und des zurückgegebenen Arrays genau verwendet werden. Es müssen auch statische und nicht statische Deklarationen berücksichtigt werden.
// Using public access modifier and static to call the method from a static class, method or block. public static char[] methodName() {...}> Kernpunkt 3: Beim Methodenaufruf muss ein Variablenarray desselben Datentyps oder eines ähnlichen Datentyps vorhanden sein, um das zurückgegebene Array zu verarbeiten. Beispielsweise kann ein von einer beliebigen Methode zurückgegebenes Integer-Array wie folgt gespeichert werden.
int[] storage = methodReturningArray();>
Implementierung:
Um dies besser zu verstehen, können wir uns einige verschiedene Arten von Szenarien ansehen, in denen wir möglicherweise Arrays zurückgeben. Hier betrachten wir drei Beispiele für Szenarien.
- Fall 1: Einfache integrierte Arrays
- Fall 2: Array von Objekten
- Fall 3: Rückgabe mehrdimensionaler Arrays
Fall 1: Gibt ein Integer-Array (integrierter Datentyp) in Java zurück
Das Array jedes integrierten Datentyps kann Ganzzahl, Zeichen, Gleitkomma oder Double sein. Alle können zurückgegeben werden, indem einfach Rückgabeanweisungen verwendet werden, wobei die oben aufgeführten Punkte zu beachten sind.
Beispiel
Java
Kartentyposkript
// 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; } }> |
>
>Ausgabe
1 2 3 4>
Fall 2: Gibt ein Array von Objekten in Java zurück
Bei der Rückgabe von Arrays integrierter Datentypen erfolgt dies auf genau die gleiche Weise.
Beispiel
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; } }> |
>
>Ausgabe
Java - 31 modules C++ - 26 modules DSA - 24 modules DBMS - 12 modules>
Fall 3: Mehrdimensionale Arrays zurückgeben
Mehrdimensionale Arrays in Java Man kann sagen, dass es sich um ein Array von Arrays innerhalb von Arrays handelt. Die einfachste Form kann ein zweidimensionales Array sein. Sie haben ihre Größe und Deklaration entsprechend ihrer Größe. Nachfolgend wird die Rückgabe eines zweidimensionalen Arrays demonstriert, das einen sehr ähnlichen Ansatz wie eindimensionale Arrays verfolgt.
Beispiel
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; } }> |
>
Palindrom in Java
>Ausgabe
1 2 3 4 5 6 7 8 9>