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?