Início > Java, SCJP > Métodos com lista de argumentos variáveis (var-args)

Métodos com lista de argumentos variáveis (var-args)

Desde a versão 5.0, Java lhe permite criar métodos capazes de usar um número de variável de argumentos.

Dependendo de onde voçê pesquisar, poderá ver essa capacidade de ser chamada de “lista de argumentos de extensão variável”, “argumentos variáveis”, “var-args”, “varargs” ou o nosso favorito (saído do departamento de obscuridade), “parâmetro com número variável de argumentos”. Todos eles são a mesma coisa, e usaremos o termo “var-args” daqui em diante.

Algumas regras de declaração para var-args:

  • Tipo var-args Quando declara um parâmetro var-arg, voçê deve especificar o tipo do(s) argumento(s) que esse parâmetro do seu método pode receber.
  • Sintaxe básica Para declararum método usandoum parâmetro var-args, voçê escreve depois do tipo um sinal de reticências (…), um espaço, e depois o nome do array que irá armazenar os parâmetros recebidos.
  • Outros parâmetros è válido ter outros parâmetros em um método que use var-arg.
  • Limites dos var-args O var-arg deve ser o último parâmetro na assinatura do método, e voçê pode ter um var-args por método.

Algumas declarações de var-args válidas e inválidas.

Válidas:


void testeScjp( int... x ){ }		//espera de 0 a muitos ints 
                                        //como parâmetro.

void testeScjp( char c, int... x ){ }	//espera um char e depois de
                                        //0 a muitos ints.

void testeScjp( Upf... upf ){ }	        //espera de 0 a muitos Upfs.

Inválidos:


void testeScjp( int x... ){ }	         //sintaxe incorreta.

void testeScjp( int... x, char... c ){ } //mais de um var-arg

void testeScjp( String... s, byte b ){ } //var-arg tem de vir por
                                         //último
Anúncios
Categorias:Java, SCJP Tags:, ,
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: