for(int i = 0; i < getjComboBox().getItemCount(); i++) {}
2
intl=getjComboBox().getItemCount();for(int i = 0; i < getjComboBox().getItemCount(); i++) {}
qual dos 2 tem a melhor performance??? concidenrando que é getjComboBox() é um combobox ???
Acho que no 2 for vc queria fazer isso:
intl=getjComboBox().getItemCount();for(int i = 0; i < l; i++) {}
Ou é uma pegadinha?
T
TomazLavieriPJ
UHAuhUHauhauhauha era isso ai JavaTeco... vou editar lá
"JavaTeco":
"TomazLavieri":
1
for(int i = 0; i < getjComboBox().getItemCount(); i++) {}
2
intl=getjComboBox().getItemCount();for(int i = 0; i < getjComboBox().getItemCount(); i++) {}
qual dos 2 tem a melhor performance??? concidenrando que é getjComboBox() é um combobox ???
Acho que no 2 for vc queria fazer isso:
intl=getjComboBox().getItemCount();for(int i = 0; i < l; i++) {}
Ou é uma pegadinha?
J
JavaTecoPJ
Se o for foi como eu coloquei, então o 2 terá uma performence melhor, pois não terá que a cada laço fazer uma chamada aos métodos getjComboBox().getItemCount() (o que já acontece com o 1 for). É óbvio, que a medida que o número de itens do comboBox vai aumentando o desempenho do 1 for vai caindo, em relação ao 2 for… O quanto de performance será melhor eu não sei… mas com certeza o 2 for será mais rápido…
T
TomazLavieriPJ
Bom… eu não sei… li num livro… que fazer referencias temporarias comiam performance…
bom… o método getItemCount() é simples
retorna um valor q ta no combox… esse método naum faz conta nenhuma =]
e tb naum sei… como funciona o for
c ele vai passar e testar cada vez… ou se vai gravar o valor e fazer o for…
axo q ele vai passar e fazer o teste cada vez… mas naum sei ao certo
abraços
J
JavaTecoPJ
Minha resposta foi baseada pelo conceito de chamada de métodos… pois quando um método é chamado é colocado na pilha de execução (é assim que a recursividade sabe para onde deve voltar), são passados os parâmetros (se necessário) e alocado um espaço de endereço de retorno… toda essa parada a cada vez que um (1) método é executado, é perdido um tempo e imagine isso dentro de um for… no entanto, … no segundo for é alocado um atributo, mas isso não vai causa problemas na performance, mas sim em espaço… mas que no caso é vai fazer diferença…
Para quem quiser saber mais sobre como é alocado atributos e chamada de métodos… é só ver o conceito de Heap…
M
matheusPJ
po gente, não consigo responder a nenhum post mais, só entro depois das 00h na semana, e ja ta tudo respondido, eaheaeha, mas vou falar aqui tb, tb penso como o javateco, quanto menos chamadas a funções melhor… qnt menos variaveis globais melhor, e quanto mais funções de chamada por valor puderem ser substituidas por chamadas a referencias melhor… essa é a velha pratica do C…! …onde os cara se matam pra deixar cada vez mais otimizado o codigo em relação a velocidade…
T
TomazLavieriPJ
bom… vou escrever o que eu li em um artigo … da SUN…
tinha lá assim
Melhor vc escrever 10 linhas de código…a criar uma varivel temporaria…
ressalva que axo q isso só vale pra objetos…
bom mas era o q diz lá… nos testes de performance… infelizmente nào tenho + o link… mas dizia isso… q criar objetos temporarios é pior q xamar métodos
J
JavaTecoPJ
“TomazLavieri”:
bom… vou escrever o que eu li em um artigo … da SUN…
tinha lá assim
Melhor vc escrever 10 linhas de código…a criar uma varivel temporaria…
ressalva que axo q isso só vale pra objetos…
bom mas era o q diz lá… nos testes de performance… infelizmente nào tenho + o link… mas dizia isso… q criar objetos temporarios é pior q xamar métodos
Puts… Vc tem o link de onde fala “Melhor vc escrever 10 linhas de código…a criar uma varivel temporaria…”? Porque isto é contraditório com o que é estudado e com os livros sobre o assunto…
T
TomazLavieriPJ
vou procurar… mas axo dificil encontrar… o link era de quando eu tinha acabado de entrar aqui no forum… era um link q tava na página principal… uma noticia… mas vou procurar
F
FelipePJ
escrever 10 linhas de codigo ao invez de criar uma variavel temporaria gasta menos memoria e portanto eh mais rapido, portanto o codigo fica mais dificil de se compreender, por isso eh uma boa pratica de programacao criar a variavel…
T
TomazLavieriPJ
axo que me expressei mau… o q eu tentei dizer é q xamar método é mais rápido que criar a variavel tempóraria… mesmo que isso tenha 10 linhas de código…
bom eu axo mais bonito quando não se criar a variavel… c eu poder fazer algo assim