Diferença entre métodos...  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Metal Java Full
JavaTeenager
[Avatar]

Membro desde: 09/11/2009 11:42:27
Mensagens: 195
Localização: Fortaleza - CE
Offline

Qual a diferença entre String.valueOf() e toString() ??

Graduação em Análise de Sistemas - Fortaleza (CE)
Sun Certified Programmer for the Java Platform, Standard Edition 6.0
Visitem meu Blog
"Reduza a Velocidade - Travessia de Modems 2400bps." OS VIGARISTAS - Frases de Informática
[Email] [MSN]
Gerson da S. Lima
JavaChild
[Avatar]

Membro desde: 26/03/2009 10:06:27
Mensagens: 142
Localização: Manaus
Offline


Não sei se tem, acho que não, a direferença tá que String.value(), pode receber vários formatos de dados que serão convertidos para String, o toString retorna a implementação de toString no objeto, que se não for sobrescrita retorna a padrão de Object (return getClass().getName() + "@" + Integer.toHexString(hashCode())

Bacharel em Ciências da Computação

Analista de Sistemas
[Email] [MSN]
davidtiagoconceicao
Virtual Machine Man
[Avatar]

Membro desde: 17/10/2008 07:28:29
Mensagens: 567
Localização: Blumenau - SC
Offline

O método toString é herdado de Object e retorna a representação textual do objeto do qual foi invocado.
O método valueOf() recebe um parâmetro e retorna a descrição textual (String) do objeto passado como parâmetro.

This message was edited 1 time. Last update was at 23/11/2009 12:54:24


Bacharel em Ciência da Computação/FURB
SCJP 6
Android Developer
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

Metal Java Full wrote:Qual a diferença entre String.valueOf() e toString() ??


toString() é definido pela classe do objeto em causa. É a classe que decide que texto retornar.

String.valueOf() se aplica a primitivos e objetos. Para os primitivos os numeros são convertidos para string excepto os char que são convertidos para um string de um caracter só. Isto é necessário já que primitivos não têm toString().
Para os objetos é feito uma chamada a toString() mas apenas se o objeto passado não for null. Se for null a string "null" será retornada.

Ou seja, o codigo de toString() vc define na classe, o codigo de valueOf() é mais ou menos assim:


Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
evertonsilvagomesjava
GUJ Master
[Avatar]

Membro desde: 23/08/2009 13:14:01
Mensagens: 1924
Offline

Bom pra nao criar outro topico deixa eu pegar o Bonde aqui e perguntar, visto o que foi falado qual a diferença entre os dois metodos abaixo sendo que a saída e a mesma.



Qual diferença entre isso?
Ssalgado
JavaTeenager

Membro desde: 11/04/2005 12:51:05
Mensagens: 199
Offline

evertonsilvagomesjava wrote:Bom pra nao criar outro topico deixa eu pegar o Bonde aqui e perguntar, visto o que foi falado qual a diferença entre os dois metodos abaixo sendo que a saída e a mesma.



Qual diferença entre isso?


Galera, agora é possível ter acesso ao código destas classes. O mais fácil é abrir e olhar. O método "toString" de double é implementado como abaixo:

This message was edited 1 time. Last update was at 23/11/2009 13:47:44

renamed
GUJ Ranger

Membro desde: 21/09/2009 08:47:57
Mensagens: 889
Localização: Rio de Janeiro
Offline

valueOf

public static String valueOf(Object obj)
Returns the string representation of the Object argument.
Parameters:
obj - an Object.
Returns:
if the argument is null, then a string equal to "null"; otherwise, the value of obj.toString() is returned.
See Also:
Object.toString()


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


flw!
===========================

CV: http://lattes.cnpq.br/7235056457600426
[MSN]
renamed
GUJ Ranger

Membro desde: 21/09/2009 08:47:57
Mensagens: 889
Localização: Rio de Janeiro
Offline



ok?

flw!
===========================

CV: http://lattes.cnpq.br/7235056457600426
[MSN]
evertonsilvagomesjava
GUJ Master
[Avatar]

Membro desde: 23/08/2009 13:14:01
Mensagens: 1924
Offline

hum vlw ae galera, eu to usando o eclipse aqui como que faz pra acessar as classes, com os métodos pra poder olhar aqui?
marcosvidolin
JavaTeenager
[Avatar]

Membro desde: 18/03/2007 12:58:57
Mensagens: 172
Localização: Holambra - SP
Offline

- o método toString() como os amigos ja responderam é um metodo que é constantemente sobrescreto pela maioria das classes. É o método que tem o papel de descrever o objeto.

- O método valueOf() é um método comum utilizado nas classes Wrappers utilizado geralmente para trasformar o valor de um objeto para um outro, dependendo da classe Wrapper. No caso o método valueOf() de String retorna um String.
No caso, Integer.valueOf("100") retornaria um Integer.



Espero der contribuido.
Me corrijam ai qualquer coisa.

[]'s

Sun Certified Java Programmer (SCJP 1.5)
Oracle Certified Web Component Developer (OCWCD 1.5)
Blog: http://marcosvidolin.wordpress.com/
[Email] [WWW] [MSN]
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

evertonsilvagomesjava wrote:Bom pra nao criar outro topico deixa eu pegar o Bonde aqui e perguntar, visto o que foi falado qual a diferença entre os dois metodos abaixo sendo que a saída e a mesma.



Qual diferença entre isso?


faça numero = null e veja a diferença.
(a primeira dá NullPointerException a segunda faz teste1 = "null" )

Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team