Parâmetros variáveis
Parâmetros variáveis são um método que pode receber qualquer número de parâmetros! Por exemplo: Fun (), Fun (1), Fun (1,1), Fun (1,1,1). Você pode pensar que essa é uma sobrecarga de método, mas isso não é uma sobrecarga. Pense em quantos métodos podem ser sobrecarregados por sobrecarga, e o método FUN () pode passar por qualquer número de parâmetros. Você pode sobrecarregar tantos métodos?
2.1 Definindo métodos de parâmetros variáveis
public voidfun (int… arr) {}
O tipo de parâmetro do método acima FUN () é int ..., onde "..." não é uma elipse, mas uma maneira de definir o tipo de parâmetro. O parâmetro arr é um tipo de parâmetro variável. Você pode entender o código acima como: Public void Fun (int [] arr).
public int sum1 (int [] arr) {int sum = 0; for (int i = 0; i <arr.length; i ++) {sum+= arr [i]; } retornar soma; } public int sum2 (int ... arr) {int sum = 0; for (int i = 0; i <arr.length; i ++) {sum+= arr [i]; } retornar soma; }Você pode pensar que "int []" e "int ..." não são diferentes, mas "int ..." é apenas que "int ..." é uma nova maneira de definir parâmetros de matriz. Então eu deveria parabenizá -lo! Está certo, está certo! Mas esteja ciente de que apenas int ... pode ser usado em vez de int [] nos parâmetros formais do método.
2.2 Métodos de chamada com parâmetros variáveis
Chamadas para os dois métodos SUM1 () e SUM2 ():
SUM1 (new int [] {1,2,3}); sum2 (new int [] {1,2,3}); Isso não parece uma diferença! Mas há outra maneira de chamar o SUM2:
SUM2 (); SUM2 (1); SUM2 (1,2); SUM2 (1,2,3);
Parece que o uso de qualquer número de parâmetros para chamar o método SUM2 (), que é o benefício de chamar um método com parâmetros variádicos.
2.3 Compilador "Processamento secundário"
O resultado do "processamento secundário" da definição do método SUM2 do compilador é:
public int sum2 (int [] arr) {int sum = 0; for (int i = 0; i <arr.length; i ++) {sum+= arr [i]; } retornar soma; }Isto é, modifique "int ..." para "int []" tipo.
O resultado da carga quadrática da chamada do compilador para o método SUM2 é:
sum2 (new int [0]); sum2 (new int [] {1}); sum2 (new int [] {1, 2}); sum2 (new int [] {1, 2, 3}); Conclusão: Os parâmetros variáveis são na verdade tipos de matriz, mas são mais convenientes ao chamar métodos. O compilador nos ajuda a colocar vários parâmetros reais em uma matriz e passá -los para parâmetros formais.
2.4 Limitações dos métodos de parâmetros variáveis
l Um método pode ter apenas um parâmetro mutável no máximo;
l O parâmetro variável deve ser o último parâmetro do método.
O exposto acima é o conteúdo completo da breve discussão de parâmetros variáveis em Java trazida a você pelo editor. Espero que seja útil para todos e apoie mais wulin.com ~