我有兩個列表填充對象元素。使用這兩個列表,我想創建另一個只包含它們之間不常見元素的列表。如何顯示兩個對象列表之間的唯一元素?
我試着使用迭代器:
for(Row currentRowObject: currentRow) {
for (Iterator<Row> newError = newErrorRow.iterator(); newError.hasNext();) {
Row rowObject = newError.next();
if (rowObject.getAll().equals(currentRowObject.getAll())) {
newError.remove();
}
}
}
我跑在此之後,newError
列表被完全移除。我檢查了兩個列表是不同的,它們的大小不同,並且這兩個列表中有不同的對象。
我該如何解決這個問題?
這樣做後,清單仍然是空的.... – 2014-11-05 16:34:17
@JohnSmith你可以上傳你如何定義你的類行。你必須有相等的(Object o)和hashCode()方法重寫(使它們唯一),這個鏈接應該可以幫助你[http://stackoverflow.com/questions/27581/what-issues-should-be-considered-when-overriding -equals-and-hashcode-in-java](http://stackoverflow.com/questions/27581/what-issues-should-be-considered-when-overriding-equals-and-hashcode-in-java) – nafas 2014-11-05 16:36:22
@約翰史密斯順便說一句,你打印出罕見的行:) – nafas 2014-11-05 16:38:54