Como retirar os colchetes e as virgulas do método toString?

A saída está dessa forma:
[
Nome: João
Sexo:masculino
CPF: 12345678910
,
Nome: Paulo
Sexo:masculino
CPF: 12345678911
]
Gostaria que a saída do toString fosse dessa forma:

Nome: João
Sexo:masculino
CPF: 13026161454

Nome: Paulo
Sexo:masculino
CPF: 13026161455

Seria bom se vc nos mostrasse o método toString e como vc está imprimindo os resultados para a gente poder te ajudar melhor.

Mas com base só na saída que vc mostrou, eu tenho quase certeza de que vc está colocando o “João” e o “Paulo” dentro de uma lista e, em seguida, imprimindo a lista.

Eu fiz um código para tentar reproduzir o que vc mostrou, veja se é parecido com o que vc fez.

import java.util.Arrays;
import java.util.List;

class Pessoa {
  String nome;
  String sexo;
  String cpf;

  Pessoa(String nome, String sexo, String cpf) {
    this.nome = nome;
    this.sexo = sexo;
    this.cpf = cpf;
  }

  @Override
  public String toString() {
    return String.format("\nNome: %s\nSexo: %s\nCPF: %s\n", this.nome, this.sexo, this.cpf);
  }
}

public class Program {
  public static void main(String... args) { // @formatter:off
    List<Pessoa> pessoas = Arrays.asList(
      new Pessoa("João", "masculino", "12345678910"),
      new Pessoa("Paulo", "masculino", "12345678911")
    ); // @formatter:on

    System.out.println(pessoas);
  }
}

Se for isso mesmo, o que vc deve fazer é não imprimir a lista em si, mas sim cada um de seus elementos individualmente. Para isso troque esta linha:

System.out.println(pessoas);

Por esta linha:

pessoas.forEach(System.out::print);
2 curtidas

Era exatamente isso amigo. Muito obrigado pela ajuda! :wink:

1 curtida