new Integer("") x Integer.parseInt("")  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
wilsontads
JavaEvangelist
[Avatar]

Membro desde: 07/03/2009 23:15:01
Mensagens: 415
Localização: Goiânia - GO
Offline

Ambos são aceitos, porém, gostaria de saber, qual apresenta uma melhor performance por em uma linha do tipo :

<% Wilson Moraes dos Santos
Goiânia - GO %>
[Email] [WWW] [Yahoo!] [MSN]
Lucas Abbatepaolo
JavaEvangelist
[Avatar]

Membro desde: 28/09/2009 16:33:23
Mensagens: 310
Offline

Não se preocupe com performance para este tipo de situação...
na realidade os dois tem objetivos e retornos diferentes....





[]'s


Programador Arquiteto

Bacharel em Sitemas de Informação
Oracle Certified Professional Java SE 6 Programmer
Rumo a Oracle Certified Professional, Java EE 5 Web Component Developer
[Email] [MSN]
Bruno Laturner
GUJ Expert
[Avatar]

Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline

http://www.google.com/codesearch#a9vGG9ncPig/src/share/classes/java/lang/Integer.java&ct=rc&cd=5&q=Integer.java


Dá na mesma.

A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Bruno Laturner wrote:Dá na mesma.


O primeiro é um método construtor. Você acabará com um int criado, associado a um endereço de memória extra, o do objeto. 2 alocações no lugar de uma só. Além disso, você também terá a criação ocorrendo no heap, local onde ficam os objetos no Java, e não no stack, local das variáveis locais e propriedades são criadas. E o pior, após a criação do objeto, você simplesmente o descarta, por causa do auto-unboxing.

No fundo aquele código equivale à:


Não sei se tem alguma otimização da VM que elimina a construção desse objeto (me parece um tipo de construção que seria muito fácil otimizar), mas o fato é que a recomenção é sempre preferir trabalhar com int no lugar de Integer:

An Integer is not a substitute for an int; autoboxing and unboxing blur the distinction between primitive types and reference types, but they do not eliminate it.

Fonte: http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html

This message was edited 1 time. Last update was at 04/01/2012 19:00:45


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team