Впервые здесь, поэтому я надеюсь, что это имеет смысл!Сравнение двух объектных архаистов
У меня есть два массива объектов: l1 и l2, я хочу выполнить сравнение между этими двумя списками и получить непревзойденное значение, например, в l3. класс пользователя содержит 2 строки:
userEnteredValue
valueReturnedFromDatabase
сказать, l1 содержит: Java, JSF, JAXR, Foo l2 содержит: JSF, JAXR
Я мог бы запустить сравнение для сопоставления значений, но не для несоответствующие значения. Логика кажется ошибочной. Любая помощь?
Для соответствующих значений:
for(User u1 : l1) {
for(User u2: l2) {
if(u1.getUserEnteredValue().equals(u2.getValueReturnedFromDatabase())) {
l3.add(u1);
}
}
Но для несовпадающих, когда я говорю, не равно, вместо того, чтобы только уникальные значения я получаю все значения. Несколько подобных сообщений в Stackoverflow предлагают реализовать метод equals и hashcode в классе User. Это необходимо, так как размер моего arraylist не превышает 5-10.
Не можете использовать 2 HashSets для этого и найти перекрывающиеся части с помощью этого? – selten98