Как отметили в комментариях ребята, вы можете изучить создание класса для хранения связанной информации, а затем использовать один список экземпляров этого класса.
Однако, если вы действительно хотите удалить повторяющиеся элементыиз одного списка при синхронизации другого можно использовать Set
для отслеживания того, что уже было просмотрено, и Iterator
для просмотра списка и удаления элементов, которые уже присутствуют в наборе:
public static void main(String[] args)
{
List<String> domainList = new ArrayList<>(Arrays.asList("gmail","yahoo","yahoo","aol"));
List<String> flagList = new ArrayList<>(Arrays.asList("Y","N","N","N"));
Set<String> seen = new HashSet<String>();
Iterator<String> di = domainList.iterator();
Iterator<String> fi = flagList.iterator();
while(di.hasNext() && fi.hasNext())
{
fi.next(); // don't care about result
String domain = di.next();
if(!seen.add(domain))
{
di.remove();
fi.remove();
}
}
System.out.println(domainList);
System.out.println(flagList);
}
Выход:
[gmail, yahoo, aol]
[Y, N, N]