Emun + Object[] =?

4 respostas
jopss

Olá… me bateu uma duvida iniciante.

Sobre usar:

public void addObjeto(String[] strings){

for(String str : strings){
//....
}

}

e usar:

public void addObjeto(String... strings){

for(String str : strings){
//....
}

}

Qual a vantagem da primeira sendo que na segunda pode-se passar quantos paramentros eu quiser, além de poder passar nenhum sem ficar usando null… sendo que a lista de string só será referencia no escopo do método em questão.

Há alguma coisa sobre performace nisso tudo ae? Padrões, recomendações ou erros?

?? :lol:

jopss

4 Respostas

ViniGodoy

Não vejo nenhuma.

O que acontece é que a segunda forma só foi inserida no Java 5, por isso, muitas vezes vc vai encontrar coisas feitas do jeito mais difícil.

Em termos de performance não há nenhuma diferença. Durante a compilação, o java transforma a forma com … em um array. Ou seja, os bytecodes finais acabam idênticos.

claudneto

Eu nem sabia que existia essa forma com …

Interessante, mas se for pensar em teclas digitadas…vc tem que digitar 3x usando o … enquanto vc digita 2x usando []
:wink:

victorwss

claudneto:
Eu nem sabia que existia essa forma com …

Interessante, mas se for pensar em teclas digitadas…vc tem que digitar 3x usando o … enquanto vc digita 2x usando []
;)

Nunca, nunca, jamais, em hipótese nenhuma pense dessa forma quando estiver programando.

Quando possível, use a forma com … porque ela é mais flexível e acaba deixando o código bem mais simples.

jopss

blza…
vlw gente!!

jopss :smiley:

Criado 24 de setembro de 2008
Ultima resposta 26 de set. de 2008
Respostas 4
Participantes 4