Como vão desenvolvedores?
Vou tentar explicar o meu problema da minha aplicação… estou recuperando dados da minha base de dados, e armazenando em um List<>:
Pessoas_Dao dao = new Pessoas_Dao();
List<Pessoas_Model> listaPrestador = dao.carregarListaPrestadoresCadastrados();
// ate aqui blz
Recupero dados de um arquivo .RE, e armazeno as linhas em outro List<>, chamado dados.
A minha intenção é comparar um determinado atributo da listaPrestador com um determinada string da List dados:
// compara o pis com objetos da lista recuperada da base de dados
// cadastro que existir na base, sera removido da lista prestador e add na lista prestCadastrados
// assim na listaPrestador somente restará os NÃO CADASTRADOS
for (Iterator<Pessoas_Model> iterator = listaPrestador.iterator(); iterator.hasNext();) {
Pessoas_Model next = iterator.next();
for (Iterator<String> iterator1 = dados.iterator(); iterator1.hasNext();) {
String linha = iterator1.next();
String pis = linha.substring(32, 43); // recupera o numero de pis na posição indicada
String nome = linha.substring(53, 123); // recupera o nome na posição indicada
// aqui faço a comparação, caso for igual ele add em outra List<> chamanda
// prestCadastrados
if (pis.equals(next.getPisPasep())) {
prestCadastrado.add(next);
iterator.remove();
} else {
Pessoas_Model novo = new Pessoas_Model();
novo.setNome_pessoa(nome.trim());
novo.setPisPasep(pis);
prestNaoCadastrado.add(novo); // somente pessoas não cadastrados
iterator1.remove();
}
}
}
O meu problema é que existe um cadastro na base, que deveria ir para a List<> prestCadastrados, e não está indo. ela esta sendo armazenada na List<>prestNaoCadastrados