Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

função toString

Ola, gostaria de saber o motivo de utilização da função toString, além do que já foi explicado que era para manter o código legível. Gostaria de saber quando é que devo utiliza-la.

O conteúdo da função, fiquei sem entender.

5 respostas

Oi Jessica!

Toda vez que voce "imprime" um objeto ou o "transforma" em uma String, o java chama o `toString daquele objeto:

System.out.println(objeto);

Internamente ele chama o toString (alem de verificar se não é nulo, mas é detalhe). É parecido com:

System.out.println(objeto.toString());

Se você não tem o toString reescrito na sua classe, ele vai usar o metodo original, definido em Object, que apenas mostra o nome da classe, concatenado com arroba, concatenado com um identificador. Não serve para muita coisa... Reescrevendo vai te ajudar a poder colocar prints/debugs/logs e ver melhor o conteúdo de cada objeto de forma pratica.

No curso de Java 2 vemos bastante de toString. Recomendo fortemente.

Se o resultado do código ficar ilegível, então tenho que chamar especificamente a função toString . E no conteúdo desta função, haverá uma chamada no StringBuilder. Essa seria a recomendação?

solução!

Oi Jessica

Voce raramente chama o método toString. Ele acaba sendo chamado por métodos internos, logs e pelas concatenações de string quando você vai "imprimir" um objeto.

No conteúdo dessa função, se for haver um loop, é bastante recomendando que a concantenação seja feito com StringBuilder. Caso contrário não faz tanta diferença.

Vejo que você está com dúvidas interessantes sobre o core do java ao fazer esse curso de estruturas de dados, realmente seria proveitoso fazer os 3 cursos de Java da Alura antes de avançar.

Também encontro algumas dúvidas similares a esta, os cursos que se refere, Paulo, são os da Carreira Desenvolvedor Java Júnior? Pergunto pois pesquisando aqui encontrei vários cursos relacionados à linguagem na Alura. Obrigado.

Sim. No curso de desenvolvedor java junior, no java 3 explica melhor essa questão do tostring. Além dele tem o java 1 e 2 , todos pertencem a carreira de desenvolvedor java junior. Recomendo fazer primeiramente os cursos de java 1, 2 e 3.