У меня есть массив Contract, который содержит:
String:id
String:value
Массив:
contract1 = Contract.new()
contract1.id = 2
contract1.value = "Apple"
contract2 = Contract.new()
contract2.id = 2
contract2.value = "Pen"
contract3 = Contract.new()
contract3.id = 1
contract3.value = "Pineapple"
array = [Contract1, Contract2, Contract3]
Хотелось бы узнать список контрактов, идентификаторы которых разные.
Я хочу иметь решение, которое не заставит меня изменить реализацию моего объекта (переопределить метод isEqual и т. Д.), Поскольку я буду использовать его для более чем одного объекта в моем коде.
Желаемый результат:
[contract1, contract3]
or [contract2, contract3]
В идеале расширение с дополнительным методом, возвращающим только те значения, которые делаются отличными:
Желаемый результат: [2, 1]
Я попробовал несколько подходов из похожих вопросов, но либо ответы устарели, либо не соответствуют моим потребностям.
map
- person David Berry   schedule 17.03.2017