Exibir lista generica como Array [Resolvido]

O seguinte codigo abaixo adiciona 3 elementos a lista e depois exibe eles como array

List<Integer> lista = new ArrayList<Integer>(); lista.add(10); lista.add(20); lista.add(30); System.out.println(lista); // imprime [10, 20, 30] Integer x = lista.get(0); // pego o elemento da posição 0, que é 10 System.out.println(x); // imprime 10
Porém eu gostaria de fazer isso usando uma lista generica

Pessoas p = new Pessoas();
        p.setPes_prenome("fabio");
        p.setPes_etnia("branco");
        p.setPes_logradouro("Avenida Alameda, 145");
        
        Pessoas p1 = new Pessoas();
        p1.setPes_prenome("claudio");
        p1.setPes_etnia("branco");
        p1.setPes_logradouro("Avenida Elizabeth Souza, 123");
        
        List<Pessoas> li = new ArrayList<Pessoas>();
        li.add(p);
        li.add(p1);
        
        System.out.println(li);

Porém nessa lista abaixo ele apenas traz o nome dos objetos, como faço para ele ser exibido igual a lista acima?

Você quer exibir o nome da Pessoa não é?
Se for isso:
Você precisa ter um método getPes_prenome() que retorne o nome da pessoa, se já existir esse método faça assim:

Pessoas p = new Pessoas();  
        p.setPes_prenome("fabio");  
        p.setPes_etnia("branco");  
        p.setPes_logradouro("Avenida Alameda, 145");  
          
        Pessoas p1 = new Pessoas();  
        p1.setPes_prenome("claudio");  
        p1.setPes_etnia("branco");  
        p1.setPes_logradouro("Avenida Elizabeth Souza, 123");  
          
        List<Pessoas> li = new ArrayList<Pessoas>();  
        li.add(p);  
        li.add(p1);  
          
        System.out.println(p.getPes_prenome());

Se entendi o que você quer, acho que basta você implementar o método toString da classe Pessoa.

Algo assim:


class Pessoa {
    
    private String nome;
    private String telefone;

    @Override
    public String toString() {
        return nome + ":" + telefone;
    }
        
}

A classe Pessoas deve ter o método toString() definido. Aí você pode imprimir o conteúdo de um Pessoas do modo que você quiser.

Se ele não estiver definido, vai imprimir algo como “Lcom.exemplo.Pessoas;@12345abcd,” conforme você deve ter descoberto.

Dica: não use o plural para identificar uma classe que não é uma coleção. Use o nome Pessoa (singular). Você só usaria o nome “Pessoas” se isso fosse um ArrayList de Pessoa, por exemplo.

Valeu funcionou, obrigado