how pass return an array java
Aquest tutorial explicarà com passar una matriu com a argument a un mètode i com a valor de retorn del mètode a Java amb exemples:
A Java s’utilitzen mètodes o funcions per dividir el programa en mòduls més petits. Aquests mètodes es criden des d'altres funcions i, en fer-ho, es passen les dades des d'aquests mètodes a les funcions de trucada.
Les dades transmeses de la funció de trucada a la funció cridada es presenten en forma d'arguments o paràmetres a la funció. Les dades retornades de la funció són el valor de retorn.
protocol i port del sistema de transferència de fitxers segur
=> Consulteu aquí per veure aquí A-Z de tutorials de formació.
Normalment, tots els tipus primitius i derivats es poden passar i retornar de la funció. De la mateixa manera, les matrius també es poden passar al mètode i retornar-les del mètode.
En aquest tutorial, analitzarem com passar matrius com a argument a un mètode i retornar la matriu del mètode.
Què aprendreu:
- Passant matriu al mètode de Java
- Com tornar una matriu a Java
- Preguntes freqüents
- Conclusió
- Lectura recomanada
Passant matriu al mètode de Java
Les matrius es poden passar a altres mètodes, com ara com es passen els arguments del tipus de dades primitiu. Per passar una matriu com a argument a un mètode, només heu de passar el nom de la matriu sense claudàtors. El prototip del mètode hauria de coincidir per acceptar l'argument del tipus de matriu.
A continuació es mostra el prototip del mètode:
void method_name (int () array);
Això vol dir que method_name acceptarà un paràmetre de tipus int. Així que si teniu una matriu int anomenada myarray, llavors podeu trucar al mètode anterior de la següent manera:
method_name (myarray);
La trucada anterior passa la referència a la matriu de matriu al mètode 'nom_metode'. Per tant, els canvis fets a la matèria dins del mètode també es reflectiran en el mètode de trucada.
A diferència de C / C ++, no cal que passeu el paràmetre de longitud junt amb la matriu al mètode, ja que totes les matrius de Java tenen una propietat 'length'. Tanmateix, pot ser aconsellable passar diversos elements en cas que només s'omplin unes poques posicions de la matriu.
El següent programa Java mostra el pas d'una matriu com a paràmetre a la funció.
public class Main { //method to print an array, taking array as an argument private static void printArray(Integer() intArray){ System.out.println('Array contents printed through method:'); //print individual elements of array using enhanced for loop for(Integer val: intArray) System.out.print(val + ' '); } public static void main(String() args) { //integer array Integer() intArray = {10,20,30,40,50,60,70,80}; //call printArray method by passing intArray as an argument printArray(intArray); } }
Sortida:
Al programa anterior, s’inicialitza una matriu a la funció principal. A continuació, es crida el mètode printArray al qual es passa aquesta matriu com a argument. Al mètode printArray, la matriu es recorre i cada element s’imprimeix mitjançant el bucle millorat.
Prenguem un altre exemple de passar matrius a mètodes. En aquest exemple, hem implementat dues classes. Una classe conté el mètode de trucada principal mentre que l’altra classe conté el mètode per trobar l’element màxim a la matriu.
Per tant, el mètode principal crida al mètode d’una altra classe passant la matriu a aquest mètode find_max. El mètode find_max calcula l'element màxim de la matriu d'entrada i el torna a la funció de trucada.
class maxClass{ public int find_max(int () myarray) { int max_val = 0; //traverse the array to compare each element with max_val for(int i=0; imax_val) { max_val = myarray(i); } } //return max_val return max_val; } } public class Main { public static void main(String args()) { //input array int() myArray = {43,54,23,65,78,85,88,92,10}; System.out.println('Input Array:' + Arrays.toString(myArray)); //create object of class which has method to find maximum maxClassobj = new maxClass(); //pass input array to find_max method that returns maximum element System.out.println('Maximum value in the given array is::'+obj.find_max(myArray)); } }
Sortida:
Al programa anterior, hem passat la matriu d’un mètode d’una classe a un altre mètode present en una classe diferent. Tingueu en compte que l'enfocament de la matriu passant és el mateix, tant si el mètode és de la mateixa classe com de diferent classe.
Com tornar una matriu a Java
A part de tots els tipus primitius que podeu tornar dels programes Java, també podeu retornar referències a matrius.
En tornar una referència a una matriu d’un mètode, heu de tenir en compte que:
- El tipus de dades que retorna el valor s’ha d’especificar com a matriu del tipus de dades adequat.
- El valor retornat d'un mètode és la referència a la matriu.
La matriu es retorna d'un mètode en els casos en què haureu de retornar diversos valors del mateix tipus d'un mètode. Aquest enfocament es fa útil ja que Java no permet retornar diversos valors.
El programa següent retorna una matriu de cadenes d’un mètode.
import java.util.*; public class Main { public static String() return_Array() { //define string array String() ret_Array = {'Java', 'C++', 'Python', 'Ruby', 'C'}; //return string array return ret_Array; } public static void main(String args()) { //call method return_array that returns array String() str_Array = return_Array(); System.out.println('Array returned from method:' + Arrays.toString(str_Array)); } }
Sortida:
El programa anterior és un exemple de retorn d'una referència de matriu d'un mètode. El mètode 'return_array' es declara una matriu de cadenes 'ret_Array' i després simplement el retorna. Al mètode principal, el valor de retorn del mètode return_array s'assigna a la matriu de cadenes i es mostra.
El programa següent proporciona un altre exemple de retorn d'una matriu d'un mètode. Aquí, fem servir una matriu sencera que s’utilitza per emmagatzemar els números aleatoris calculats i després aquesta matriu es retorna a la persona que truca.
public class Main { public static void main(String() args) { final int N = 10; // number of random elements // Create an array int() random_numbers; // call create_random method that returns an array of random numbers random_numbers = create_random(N); System.out.println('The array of random numbers:'); // display array of random numbers for (int i = 0; i number of random numbers to be generated int() random_array = new int(N); //generate random numbers and assign to array for (int i = 0; i Sortida:

De vegades, els resultats del càlcul són nuls o buits. En aquest cas, la majoria de les vegades, les funcions tornen nul·les. Quan hi ha matrius, és millor retornar una matriu buida en lloc de nul·la. Això es deu al fet que el mètode de retorn de la matriu tindrà consistència. A més, la persona que truca no ha de tenir cap codi especial per gestionar valors nuls.
Preguntes freqüents
P # 1) Java Pass Arrays per referència?
Resposta: Sí. Les matrius es passen per referència per defecte. Mentre passem la matriu a la funció, simplement proporcionem el nom de la matriu que s’avalua a l’adreça inicial de la matriu.
com obrir el fitxer .dat a l'iPhone
Q # 2) Per què els matrius no es passen pel valor?
Resposta: Les matrius no es poden passar per valor perquè el nom de la matriu que es passa al mètode s'avalua com a referència.
P # 3) Es pot retornar una matriu a Java?
Resposta: Sí, podem retornar una matriu a Java. Ja hem donat exemples de retorn de matrius en aquest tutorial.
Q # 4) Un mètode pot retornar diversos valors?
Resposta: Segons les especificacions, els mètodes Java no poden retornar diversos valors. Però podem tenir formes rotundes de simular la devolució de diversos valors. Per exemple, podem retornar matrius que tinguin diversos valors o col·leccions.
Q # 5) Pot un mètode tenir dues sentències de retorn a Java?
Resposta: No, Java no permet que un mètode tingui més d’un valor de retorn.
Conclusió
Java permet passar matrius a un mètode com a argument, així com retornar-los d’un mètode. Les matrius es passen al mètode com a referència.
Mentre es crida a un mètode concret, es passa el nom de la matriu que apunta a l'adreça inicial de la matriu. De la mateixa manera, quan es retorna una matriu d'un mètode, és la referència que es retorna.
En aquest tutorial, hem tractat els temes anteriors en detall amb exemples. En els nostres tutorials posteriors, tractarem més temes sobre matrius a Java.
=> Visiteu aquí la sèrie exclusiva de cursos de formació de Java.
Lectura recomanada
- Tutorial de longitud de matriu de Java amb exemples de codi
- Java Array - Com imprimir elements d'un array a Java?
- Matriu Java: declarar, crear i inicialitzar una matriu a Java
- Matriu genèrica de Java: com simular matrius genèrics a Java?
- Tutorial de reflexió de Java amb exemples
- Matriu d'objectes a Java: Com crear, inicialitzar i utilitzar
- Tutorial Java SWING: Gestió de contenidors, components i esdeveniments
- Tutorial JAVA per a principiants: més de 100 tutorials pràctics de vídeo Java