У меня проблемы с получением моего кода для правильного возврата списка отдельных элементов. У меня есть список объектов listToObserve
, которые содержат мой GroupModel
с SimpleStringProperty
, который я использую для определения равенства методом equals
.
class GroupModel(name: String = "myGroup") {
val nameProperty = SimpleStringProperty(this, "groupName", name)
var name: String by nameProperty
override fun equals(other: Any?): Boolean {
if (this === other) return true
if (javaClass != other?.javaClass) return false
other as GroupModel
if (nameProperty.value != other.nameProperty.value) return false
return true
}
}
Вот что я пробовал:
val distinctGroups = listToObserve.map { it.group }.stream().distinct().collect(Collectors.toList()).toObservable()
Мое понимание этого совершенно другое, я должен сравнивать каждую группу по имени, и если она равна, она не будет добавлять ее, но она добавляет группы с точно таким же именем. Может ли кто-нибудь помочь мне определить мою ошибку?