Integer.parseInt ou Integer.valueOf

Ola pessoal tudo bom!!

Qual seria a diferença entre Integer.valueOf e Integer.parseInt ???

Obrigado

Integer.valueOf retorna um objeto Integer e Integer.parseInt retorna um primitivo int.

Lembre-se de procurar na documentação antes de abrir um tópico para essas questões, pois você encontra facilmente a resposta para elas lá.

Blz? Flw! :thumbup:

http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html#valueOf(java.lang.String)

Simples eh bem claro von.juliano ,
o problema e que as pessoas acham mais fácil perguntar do que
olhar a api =/ .

Depende do método.
O Integer.parseInt(String) converte uma string em um numero inteiro e decimal, sendo que o caracter na string deve ser um caracter numerico (“1”).
Já o Integer.valueOf se for o que recebe um int (Integer.valueOf(int)), retorna uma instancia representando um valor inteiro especifico. O Integer.valueOf(String), retorna um objeto do tipo inteiro com o valor especificado na String.

Pode obter mais respostas em: http://java.sun.com/javase/6/docs/api/java/lang/Integer.html

abs

[quote=edmarr]Simples eh bem claro von.juliano ,
o problema e que as pessoas acham mais fácil perguntar do que olhar a api =/ .[/quote]
Pela pergunta, ele deve estar começando agora, então o que escrevi foi uma crítica construtiva, espero que o dono do tópico entenda assim. Acho que no começo você apanha um pouco mesmo pra achar as respostas, por simples que sejam! :mrgreen:

Já tô cansado de ver gente no fórum com mais de 1000 mensagens que até hoje perguntam qualquer coisa, tipo “O que é a sopa de letrinhas J2EE, JPA, …?” ou “Como crio um projeto tal no Eclipse?”. VTNC né? Mais de 1000 e ainda num aprendeu a googlar?

Espero que o rapaz se acostume a procurar antes de perguntar, o que é bom pra todos nós! :thumbup:

O que mais você tem que saber… caso esteja pensando em certificação.

O método Integer.valueOf retornará um novo objeto do tipo Integer se o valor for < -128 ou > 127.
Caso contrário, ele retornará um objeto de um pool, já previamente criado.

Ou seja:

Integer.valueOf(10) == Integer.valueOf(10), porém
Integer.valueOf(1000) != Integer.valueOf(1000)

Por isso, para a comparação entre dois wrappers de tipo primitivo, como o "Integer", use o método equals e não ==. Esse aviso fica especialmente importante agora que o java implementa auto-unboxing.

[quote=ViniGodoy]O que mais você tem que saber… caso esteja pensando em certificação.

O método Integer.valueOf retornará um novo objeto do tipo Integer se o valor for < -128 ou > 127.
Caso contrário, ele retornará um objeto de um pool, já previamente criado.

Ou seja:

Integer.valueOf(10) == Integer.valueOf(10), porém
Integer.valueOf(1000) != Integer.valueOf(1000)

Por isso, para a comparação entre dois wrappers de tipo primitivo, como o "Integer", use o método equals e não ==. Esse aviso fica especialmente importante agora que o java implementa auto-unboxing.[/quote]

Fora o fato que em breve vai ser possivel alterar a abrangencia desse pool então talvez isso deixe de cair nas provas de certificação.

E antes do auto-boxing voce tinha um erro ao fazer
Integer x = Integer.parseInt(“10”)
ou
int x = Integer.valueOf(“10”);

Mas agora com auto-boxing é indiferente. O unico problema é o caso do pool.

Que coisa mais chata esse negócio de “procura no google” meu! Não quero criar discussão nem nada, tem gte que é folgada e tem gte que, por falta de conhecimento, acaba não sabendo utilizar as palavras certas pra encontrar as coisas! Então pq não faz que nem eu: qdo eu acho q a pergunta é obvia demais, eu não respondo! Assim a pessoa vai ter q correr atrás de outra forma! É simples!

Desculpem a minha revolta, mas uma das coisas q eu sempre admirei nesse fórum era que tinha muito pouco disso aqui, e ultimamente estou lendo muita gte começando com essa história, e são sempre os mesmos… Eu não vejo usuários como o “ViniGodoy” e muitos outros veteranos daqui criticando ngm, pelo contrário, sempre ajudam e fazem comentários pertinentes, mas sem entregar nada pronto… é passando um link, dando uma dica e fazendo a pessoa pensar…

pq gte com mto menos experiência aqui quer se achar “dono” do fórum?

1 curtida

[quote=rodpuc]Que coisa mais chata esse negócio de “procura no google” meu! Não quero criar discussão nem nada, tem gte que é folgada e tem gte que, por falta de conhecimento, acaba não sabendo utilizar as palavras certas pra encontrar as coisas! Então pq não faz que nem eu: qdo eu acho q a pergunta é obvia demais, eu não respondo! Assim a pessoa vai ter q correr atrás de outra forma! É simples!

Desculpem a minha revolta, mas uma das coisas q eu sempre admirei nesse fórum era que tinha muito pouco disso aqui, e ultimamente estou lendo muita gte começando com essa história, e são sempre os mesmos… Eu não vejo usuários como o “ViniGodoy” e muitos outros veteranos daqui criticando ngm, pelo contrário, sempre ajudam e fazem comentários pertinentes, mas sem entregar nada pronto… é passando um link, dando uma dica e fazendo a pessoa pensar…

pq gte com mto menos experiência aqui quer se achar “dono” do fórum?[/quote]

Blz entao ue ele nao precisa sber usar o google nao , basta apenas olha api ou eh dificil ele dar um F1 encima do que ele ta querendo usar unsando por exemplo a Ide Eclipse.

Moderadores, tenho uma sugestão, criem a role “Policial do fórum” e passem pro nosso amigo pra ele ficar feliz

[quote=rodpuc]Que coisa mais chata esse negócio de “procura no google” meu! Não quero criar discussão nem nada, tem gte que é folgada e tem gte que, por falta de conhecimento, acaba não sabendo utilizar as palavras certas pra encontrar as coisas! Então pq não faz que nem eu: qdo eu acho q a pergunta é obvia demais, eu não respondo! Assim a pessoa vai ter q correr atrás de outra forma! É simples!

Desculpem a minha revolta, mas uma das coisas q eu sempre admirei nesse fórum era que tinha muito pouco disso aqui, e ultimamente estou lendo muita gte começando com essa história, e são sempre os mesmos… Eu não vejo usuários como o “ViniGodoy” e muitos outros veteranos daqui criticando ngm, pelo contrário, sempre ajudam e fazem comentários pertinentes, mas sem entregar nada pronto… é passando um link, dando uma dica e fazendo a pessoa pensar…

pq gte com mto menos experiência aqui quer se achar “dono” do fórum?[/quote]

Relaxa, isso sempre vai existir. De vez enquando até eu tenho vontade de pedir pro cara olhar no google, mas me seguro…
O pessoal esquece do que é ser iniciante. Como eu dou aula e estou sempre em contato com quem não sabe absolutamente nada (de java), acho que tenho uma noção um pouco melhor da dificuldade do pessoal que está começando. Por isso evito uma resposta evasiva como “olha no google”.

Esse caso mesmo. Já tive um aluno que leu a API, mas não se ligou que Integer e int eram coisas diferentes. Se você esquece (ou não sabe) que além do tipo primitivo existe o wrapper, pode ler a palavra Integer e entender como int mesmo.

Uma dica pros veteranos de plantão. Algumas dúvidas são extremamente recorrentes no fórum. Por isso, quando estiverem inspirados, criem uma explicação mais detalhada para elas, e adicionem sua própria explicação nos seus favoritos. Quando você vir novamente a dúvida, já tem o link do tópico. Vocês já viram o tamanho da minha lista de favoritos? E olha que eu nem acompanho o fórum de web…