Retorno de Listas!

Tenho um diretório com N arquivos e após leitura e atribuição dos seus elementos tenho que compara pra verificar se existe arquivos duplicados dentro das listas atuais. Tentei fazer com Foreach, com Iterator mais acho que meu laço não está permitindo validar só os novos elementos, está varrendo todo o conteudo. Preciso da ajuda de vcs.

DECLARO

List<filipeta> ListaArqDelimita = new ArrayList<filipeta>();

INSTANCIO

for(; i < arquivos.length; i++){
			
			ListaArqDelimita = new ArrayList<filipeta>();			
			LinhasConteundos = new ArrayList<String>();

ATRIBUO

fip01.setQtdTrans(linha[j].substring(610, 614));
							fip01.setValor(Float.parseFloat(linha[j].substring(625, 632).replace(",", ".")));
							fip01.setArquivo(linha[j].substring(633, 695));
							ListaArqDelimita.add(fip01);	

NO FINAL DE CADA ARQUIVO TENTO VALIDAR AS DUPLICIDADES.

			for (int k = 0; k < ListaArqDelimita.size(); k++) {
				for (filipeta comparaFilipeta : ListaArqDelimita) {
					if (comparaFilipeta.getArquivo().equals(ListaArqDelimita.get(k).getArquivo())) {
						comparaFilipeta.setArquivo(ListaArqDelimita.get(k).getArquivo());
						comparaFilipeta.setServico(ListaArqDelimita.get(k).getServico());
						comparaFilipeta.setValor(ListaArqDelimita.get(k).getValor());
						comparaFilipeta.setCarro(ListaArqDelimita.get(k).getCarro());
						ListaDuplicada.add(comparaFilipeta);
					}
				}
			}	

quando acabo de ler todos os arquivos tenho um numero fora do real

Olá,
Primeiro: Cria o List tipado: List e procure não usar genérico a menos que realmente precise.
Segundo, sobre comparar duas listas, vc pode usar os métodos retainAll ou removeAll do List para manter só os iguais ou manter só os diferentes na lista. Ex:
ListaArqDelimita.retainAll(LinhasConteundos);

Não obtive sucesso. =(

	if (ListaDuplicada.size() == 0){
			ListaDuplicada.addAll(ListaArqDelimita);
		}else{
			for (int k = 0; k < ListaArqDelimita.size(); k++) {
				for (filipeta comparaFilipeta : ListaArqDelimita) {
					if (comparaFilipeta.getArquivo().equals(ListaArqDelimita.get(k).getArquivo())){
						ListaDuplicada.retainAll(ListaArqDelimita);
						logger.info("Registro Duplicado - " +  ListaArqDelimita.get(k).getArquivo());
					}
					
				}

NNNNNN, vc tá fazendo isso em loop. Não é essa a ideia. Arranca fora esses laços e usa só esses métodos da lista.

como vou fazer pra verificar a igualdade de cada registro !?! isso não entra na minha cabeça !
Ou seja

tenho um padrão de lista abaixo

public class filipeta {

String dia,hora,seq,carro,turno,servico,qtdTrans,arquivo;
float valor;

como vou saber se o get.arquivo() é igual a da outra lista !!! desculpe minha ignorância é que não consigo implementar o que eu não entendo … kkkkkkkkkkkk

@Clowbr15, o que o @Rodrigo_Void está tentando te dizer é que não é preciso realizar a comparação, quando se utiliza o método removeAll, por exemplo.

O único ponto que ele esqueceu é que os métodos removeAll e retainAll precisam que os objetos sejam efetivamente idênticos (o método equals retorne true para as instâncias comparadas) e isso só irá ocorrer caso todos os atributos do objeto que corresponde a cada item na lista seja, efetivamente, idêntico.

Eu entendo a tua preocupação e, neste caso, sugiro que você pesquise sobre Comparator<T> e Comparable<T>

Muito Obrigado Pessoal. Vou Pesquisar e voltarei com a solução Até a próxima.

A respeito da solução do @Rodrigo_Void

List<String> lista1 = new ArrayList<String>(); //Repare na tipagem <String> dada à List
List<String> lista2 = new ArrayList<String>();

lista1.add("a");
lista1.add("e");
lista1.add("i");
lista1.add("o");
lista1.add("u"); 

lista2.add("a");
lista2.add("o");

lista1.removeAll(lista2);

for(String s : lista1) {
    System.out.println(s);
}

//Saída
//e
//i
//u

Entendeu como funciona o removeAll? retainAll seria o inverso, manteria só o que existe em ambas as listas.
Viu como não precisa comparar item a item?
Agora, isso só funciona porque o “a” e o “o” são iguais, tanto na lista1 quanto na lista2.