how pass return an array java
Este tutorial explicará como passar uma matriz como um argumento para um método e como um valor de retorno para o método em Java com exemplos:
Métodos ou funções são usados em Java para quebrar o programa em módulos menores. Esses métodos são chamados de outras funções e, ao fazer isso, os dados são passados de e para esses métodos para as funções de chamada.
Os dados passados da função de chamada para a função chamada estão na forma de argumentos ou parâmetros para a função. Os dados retornados da função são o valor de retorno.
quem tem o melhor serviço de email
=> Verifique aqui para ver A-Z dos tutoriais de treinamento de Java aqui.
Normalmente, todos os tipos primitivos e derivados podem ser passados e retornados da função. Da mesma forma, os arrays também podem ser passados para o método e retornados do método.
Neste tutorial, discutiremos como passar arrays como um argumento para um método e retornar o array do método.
O que você aprenderá:
- Passando Array para o Método em Java
- Como retornar um array em Java
- perguntas frequentes
- Conclusão
- Leitura recomendada
Passando Array para o Método em Java
Os arrays podem ser passados para outros métodos, assim como você passa os argumentos do tipo de dado primitivo. Para passar um array como argumento para um método, basta passar o nome do array sem colchetes. O protótipo do método deve corresponder para aceitar o argumento do tipo de matriz.
A seguir está o protótipo do método:
void method_name (int () array);
Isso significa que o method_name aceitará um parâmetro de matriz do tipo int. Então, se você tem um array int chamado myarray, então você pode chamar o método acima da seguinte maneira:
method_name (myarray);
A chamada acima passa a referência ao array myarray para o método ‘method_name’. Portanto, as alterações feitas em myarray dentro do método refletirão também no método de chamada.
Ao contrário de C / C ++, você não precisa passar o parâmetro de comprimento junto com a matriz para o método, pois todas as matrizes Java têm uma propriedade 'comprimento'. No entanto, pode ser aconselhável passar vários elementos caso apenas algumas posições na matriz sejam preenchidas.
O programa Java a seguir demonstra a passagem de um array como parâmetro para a função.
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); } }
Resultado:
No programa acima, uma matriz é inicializada na função principal. Em seguida, o método printArray é chamado, para o qual esse array é passado como argumento. No método printArray, a matriz é percorrida e cada elemento é impresso usando o loop for aprimorado.
Tomemos outro exemplo de passagem de matrizes para métodos. Neste exemplo, implementamos duas classes. Uma classe contém o método de chamada principal, enquanto a outra classe contém o método para encontrar o elemento máximo na matriz.
Portanto, o método principal chama o método em outra classe, passando a matriz para este método find_max. O método find_max calcula o elemento máximo da matriz de entrada e o retorna para a função de chamada.
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)); } }
Resultado:
No programa acima, passamos a matriz de um método em uma classe para outro método presente em uma classe diferente. Observe que a abordagem de passar array é a mesma, quer o método esteja na mesma classe ou em uma classe diferente.
Como retornar um array em Java
Além de todos os tipos primitivos que você pode retornar de programas Java, você também pode retornar referências a arrays.
Ao retornar uma referência a uma matriz de um método, você deve ter em mente que:
- O tipo de dados que retorna o valor deve ser especificado como a matriz do tipo de dados apropriado.
- O valor retornado de um método é a referência ao array.
A matriz é retornada de um método nos casos em que você precisa retornar vários valores do mesmo tipo de um método. Essa abordagem se torna útil, pois Java não permite o retorno de vários valores.
O programa a seguir retorna uma matriz de string de um método.
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)); } }
Resultado:
O programa acima é um exemplo de retorno de uma referência de array de um método. O método ‘return_array’ é declarado uma matriz de strings ‘ret_Array’ e então simplesmente o retorna. No método principal, o valor de retorno do método return_array é atribuído à matriz de string e, em seguida, exibido.
O programa a seguir fornece outro exemplo de retorno de uma matriz de um método. Aqui, usamos uma matriz de inteiros que é usada para armazenar os números aleatórios calculados e, em seguida, essa matriz é retornada ao chamador.
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 Resultado:

Às vezes, os resultados do cálculo são nulos ou vazios. Nesse caso, na maioria das vezes, as funções retornam nulo. Quando arrays estão envolvidos, é melhor retornar um array vazio em vez de null. Isso ocorre porque o método de retorno do array terá consistência. Além disso, o chamador não precisa ter um código especial para lidar com valores nulos.
perguntas frequentes
P # 1) O Java passa arrays por referência?
Responda: sim. As matrizes são, por padrão, passadas por referência. Ao passar o array para a função, simplesmente fornecemos o nome do array que avalia o endereço inicial do array.
Q # 2) Por que os Arrays não são passados por valor?
Responda: Os arrays não podem ser passados por valor porque o nome do array passado para o método é avaliado como uma referência.
como abrir arquivos jar no windows 10
P # 3) Um Array pode ser retornado em Java?
Responda: Sim, podemos retornar um array em Java. Já demos exemplos de retorno de arrays neste tutorial.
P # 4) Um método pode retornar vários valores?
Responda: De acordo com as especificações, os métodos Java não podem retornar vários valores. Mas podemos ter formas indiretas de simular o retorno de vários valores. Por exemplo, podemos retornar matrizes que possuem vários valores ou coleções para esse assunto.
P # 5) Um método pode ter duas instruções Return em Java?
Responda: Não. Java não permite que um método tenha mais de um valor de retorno.
Conclusão
Java permite que os arrays sejam passados para um método como um argumento, bem como retornados de um método. Os vetores são passados para o método como referência.
Ao chamar um método específico, o nome da matriz que aponta para o endereço inicial da matriz é passado. Da mesma forma, quando uma matriz é retornada de um método, é a referência que é retornada.
Neste tutorial, discutimos os tópicos acima em detalhes com exemplos. Em nossos tutoriais subsequentes, cobriremos mais tópicos sobre arrays em Java.
=> Visite aqui a série exclusiva de tutoriais de treinamento em Java.
Leitura recomendada
- Tutorial de comprimento de array Java com exemplos de código
- Array Java - como imprimir elementos de um array em Java?
- Array Java - declarar, criar e inicializar um array em Java
- Array genérico de Java - como simular matrizes genéricas em Java?
- Tutorial de reflexão Java com exemplos
- Matriz de objetos em Java: como criar, inicializar e usar
- Tutorial Java SWING: Container, Componentes e Manipulação de Eventos
- Tutorial de JAVA para iniciantes: mais de 100 tutoriais práticos em vídeo Java