У меня есть два списка объектов. Я создал этот список, запросив базу данных.сравнить два списка объектов в Java, чтобы удалить дубликат
Для Ex:
List<Employee> firstList={holDate,holName,createdby,empId}
List<Employee> seconList={holDate,holName,createdby,empId}
Теперь мне нужно сравнить holDate
, holName
из firstList
с holDate
, holName
из secondList
. Если holDate
, holName
firstList
не найден в secondList
, мне нужно добавить это в отдельный список.
Список может быть в любом порядке.
ПРИМЕЧАНИЕ: empId является столбцом первичного ключа.
Update - то, что я пробовал:
for(Employee emp:firstList) {
for(Employee tgtEmp:seconList) {
if((emp.getHolDate()!=tgtEmp.getHolDate())&& (emp.getHolName()!=tgtEmp.getHolName())){
printList.add(emp); break;
}
}
}
Список Sample значения:
firstList = {{2015-08-15, "День независимости", "e1", "Empl" }, {2015-01-26, «День Республики», «e1», «Empl»}, {2015-09-20, «День памяти», «e1», «Empl»}}
seconList = {{ 2015-08-15, «День независимости», «e1», «Emp2»}, {2015-10-25, «День благодарения», «e1», «Emp2»}}
Здесь новый список должен имеют все значения, которые доступен в seconList и «RepublicDay», «день памяти» от firstList
Что такое 'Employee'? Имеет ли он собственный метод 'equals' и' hashcode', поэтому очень просто было бы просто использовать 'List # removeAll' или' List # keepAll' для идентификации дубликатов. Разумеется, вы могли бы просто обоим им в какой-то «набор» ... – MadProgrammer
Вы провели какое-либо исследование, прежде чем задавать вопрос? Смотрите много вопрос, который вы можете получить в StackOverflow –
Hi Renjith, пожалуйста найти ниже фрагмент кода
для (Сотрудника EMP: firstList) { \t \t \t \t \t \t \t \t для (Сотрудника tgtEmp: seconList) { \t \t \t \t \t \t \t \t \t \t если ((emp.getHolDate()! = tgtEmp.getHolDate()) && \t \t \t \t \t \t \t (emp.getHolName()! = TgtEmp.getHolName())) { \t \t \t \t \t \t перечень печати.добавить (ЭМИ); \t \t \t \t \t \t break; \t \t \t \t \t} \t \t \t \t \t \t \t \t \t \t \t \t} \t \t \t \t} – iShower