logo

Com retornar una matriu a Java?

Una matriu en Java és diferent en la implementació i l'ús en comparació amb la de C/C++, tot i que també tenen moltes similituds. Aquí parlarem de com tornar una matriu en java.

Per tal de retornar una matriu en java, hem de tenir cura dels punts següents:



que gran és el meu monitor

Punt clau 1: El mètode que retorna la matriu ha de tenir el tipus de retorn com a matriu del mateix tipus de dades que el de la matriu que es retorna. El tipus de retorn també pot ser els objectes de classe Integer, Double, Character, String o definits per l'usuari habituals.

// 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() {...}>

Punt clau 2: Els modificadors d'accés s'han d'utilitzar amb precisió tenint en compte l'ús del mètode i la matriu que retorna. També s'han de tenir en compte les declaracions estàtiques i no estàtiques.

// Using public access modifier and static to call the method from a static class, method or block. public static char[] methodName() {...}>

Punt clau 3: Hi ha d'haver qualsevol matriu variable del mateix tipus de dades o alguna cosa semblant a la crida del mètode per gestionar la matriu que es retorna. Per exemple, una matriu d'enters retornada des de qualsevol mètode es pot emmagatzemar de la següent manera.



int[] storage = methodReturningArray();>

Implementació:

Per entendre-ho millor, podem analitzar alguns tipus diferents d'escenaris en què podem tornar matrius. Aquí considerarem tres exemples d'escenaris.

  • Cas 1: matrius simples integrades
  • Cas 2: matriu d'objectes
  • Cas 3: Retorn de matrius multidimensionals

Cas 1: Devolució d'una matriu d'enter (tipus de dades integrat) en java



Qualsevol matriu de tipus de dades incorporada sigui enter, caràcter, flotant, doble tot es pot retornar simplement utilitza declaracions de retorn tenint en compte els punts esmentats anteriorment.

Exemple

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; } }>

>

>

Sortida

què és un monitor
1 2 3 4>

Cas 2: Devolució d'una matriu d'objectes en java

Això es fa exactament de manera similar en el cas de matrius de retorn de tipus de dades integrats.

Exemple

Java

c matriu de cadenes de codi




// 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; } }>

>

>

Sortida

Java - 31 modules C++ - 26 modules DSA - 24 modules DBMS - 12 modules>

Cas 3: Retorn de matrius multidimensionals

Matrius multidimensionals en java es pot dir que és una matriu de matrius dins de matrius. La forma més senzilla pot ser una matriu bidimensional. Tenen les seves talles i declaració segons les seves talles. Aquí es mostra a continuació el retorn d'una matriu bidimensional que té un enfocament molt similar a les matrius unidimensionals.

Exemple

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; } }>

charat java
>

>

Sortida

1 2 3 4 5 6 7 8 9>