Dúvida básica ArrayList

Bom dia pessoal.
Podem me ajudar com uma dúvida básica:

Recebo um ArrayList que seu dar um get, apresenta o seguinte conteúdo:
Comando:
for(int i=0;i<dados.size();i++){
System.out.println(dados.get(i));
}
Resultado:
{nome=Marco, Idade=35, cidade=Sao Paulo}
{nome=Amanda, Idade=23, cidade=Suzano}
{nome=Everton, Idade=40, cidade=Osasco}

A pergunta é: como capturar esses dados deste Array de forma que eu possa, para cada linha, ter o nome, idade e cidade de dada pessoa?

Preciso dar um INSERT em uma tabela no banco mas não consigo capturar os atributos de cada um. Apenas a linha toda.

Pode me ajudar?

Obrigado!

Abraço!

vamos la.

esse array list de de que?

é um arraylist tipado?

pq vc deveria ser capaz de

for(int i=0;i<dados.size();i++){ // poderia ser um for each também....
  Pessoa p = dados.get(i); // caso o seu tipo sera Pessoa
  // p.getNome(); deveria retornar o nome , etc
}

Olá Peczenyj;
Obrigado pela resposta.

Não seria um arraylist tipado com um objeto. Recebo ele pronto onde ele é construído através da seguinte forma:

List lsPessoa = new ArrayList();
while (rs.next()) {
HashMap hm = new HashMap();
hm.put(“nome”, rs.getString(1));
hm.put(“idade”, rs.getInt(2));
hm.put(“cidade”, rs.getString(3));
lsPessoa.add(hm);
}

Qual a melhor maneira de ler o lsPessoa pegando os atributos de cada registro?

Agradeço mais uma vez!

Abraço!

Pode ser feito de várias formas, segue abaixo alguns exemplos!

Exemplo:

List<HashMap> list = new ArrayList<>();//Lista de Maps
HashMap hm = new HashMap();//Map qualquer

//Inserindo valores no Map        
hm.put("Chave 1", "Valor 1");
hm.put("Chave 2", "Valor 2");
hm.put("Chave 3", "Valor 3");
       
list.add(hm);//Inserindo Map na lista

Maneiras de apresentar os valores:

/*    Maneira 1    */
list.forEach((objectCurrent) -> {
    objectCurrent.forEach((k, v) -> {
        System.out.println(k.toString() + " -> " + v.toString());
    });
});
     
/*    Maneira 2       */
for (HashMap objectCurrent : list) {
    objectCurrent.forEach((k, v) -> {
        System.out.println(k.toString() + " -> " + v.toString());
    });
};

/*    Maneira 3    */
for (HashMap objectCurrent : list) {
    for (Object obj : objectCurrent.entrySet()) {
        System.out.println(obj.toString());
    }
};

Você não acha que fica melhor assim?

List<Pessoa> lsPessoa = new ArrayList<>();
while (rs.next()) {
    Pessoa p = new Pessoa();
    p.setNome(rs.getString(1));
    p.setIdade(rs.getInt(2));
    p.setCidade(rs.getString(3));
    lsPessoa.add(p);
}