我有一個自定義類的數組。我已經在其上定義了< =>,並且已經過測試,以確保我的自定義定義按照其應有的方式運行。我認爲我可以調用[] .uniq並將其過濾掉我的重複項,但是這沒有發生。是否有另一個運營商我需要超載?ruby 1.9.2 uniq方法不能對抗自定義類的數組
1
A
回答
3
Array#uniq
是基於平等,而不是排序,所以你的對象需要到eql?
迴應。此外,它使用散列來加速性能,所以你也需要實現hash
。
不幸的是,這份合同沒有在the documentation中指定,但它通常是是幾乎在每本Ruby書籍或課程中都有指定。
1
我需要什麼樣的實現,是.hash
相關問題
- 1. 在Ruby 1.8.7/1.9.2上的Rails 3中對類'Date'未定義的方法'>>'
- 2. Ruby對象未定義的方法
- 3. ruby的解決方法1.9.2:不支持定義爲多個類的單例方法的超級方法
- 4. 未定義的方法`action_mailer」使用Ruby 1.9.2和Rails 3.0.8
- 5. 對蝦未定義的方法頭
- 6. 無法在自定義Ruby類中使用[方括號]方法?
- 7. ruby中的自定義排序方法
- 8. 使用模塊定義元類方法
- 9. 保存每個包含自定義對象數組的自定義對象數組,最好的方法?
- 10. 問題與Ruby類方法的定義
- 11. Array#uniq ActiveRecord對象數組
- 12. Ruby自定義創建方法
- 13. 在golang中替換自定義類型數組的方法
- 14. 從自定義類中填充數組的最簡單方法?
- 15. 該方法未定義類型,數組
- 16. C#在自定義類數組中計數自定義類對象
- 17. 未定義的方法`class_inheritable_accessor'
- 18. Ruby - 如何重新定義類方法?
- 19. Ruby on Rails。自定義驗證器方法中的自定義消息
- 20. 類或方法定義也是Ruby中的一個對象嗎?
- 21. 不能保存自定義分類的自定義類別
- 22. activerecord-2.3.14用ruby打破1.9.2 ::未定義的方法`拒絕'爲「4」:字符串
- 23. Java中的自定義對象數組排序不分類
- 24. Ruby 1.9.2不能在OSX上安裝?
- 25. 未定義的方法`訪問者對Rails 3的DB:遷移
- 26. 什麼方法來定義ruby中的類級別方法
- 27. Ruby不能識別`downcase`或`split`作爲定義的方法嗎?
- 28. 綁定對話框過程作爲自定義類的方法
- 29. 無法調用自定義類對象Excel的方法VBA
- 30. 未定義的方法`[]'nil:NilClass當通過Ruby數組循環時
你是怎麼解決的? –
我在軌道irc頻道問了一個人。 –