Uso do implements Comprarable. Pq deve colocar o toString para ordenar os atributos da classe main?

Eh o seguinte

Usando o implements Comparable para ordenar os atributos a serem exibidos na classe main.

Mas se eu nao declarar o toString e o que vai ser exibido na tela o JAVA só vai exibir lixos.
Pq eu devo usar o toString para isso?

Exemplo:

List lista = new ArrayList();

	v.setCod(107);
	v.setDescr("Testando");
	v.setNome("Marcelo");
	v.setSal(500.20);
	v.setLetra('B');
                            
                           """""Collections.sort(lista);"""""	

	lista.add(v);

[quote=Marcelo_bahia]Eh o seguinte

Usando o implements Comparable para ordenar os atributos a serem exibidos na classe main.

Mas se eu nao declarar o toString e o que vai ser exibido na tela o JAVA só vai exibir lixos.
Pq eu devo usar o toString para isso?
[/quote]

A comparação e ordenação não têm relação ao toString.
Acontece que para mostrar objetos na linha de comandos - como texto - vc precisa “converter” os objetos para String.
A forma padrão de fazer isso é com toString.

Se vc manda fazer System.out.print(x) e x é um objeto o que será feito é chamar toString desse objeto.
Se vc mudar a forma de escrever na tela não precisa do toString. toString é muito usado para debug porque é simples,mas
vc pode usar algo mais trabalhado , por exemplo


public void printVariavel(Variavel v){
     System.out.append("Variável de codigo ").append(v.getCode()).append(" tem o nome ").append(v.getNome()).
}