如果我有兩個數組,a1和a2在ruby中做一個詞典比較,我做a1 < => a2。當在ruby中進行詞典對比時覆蓋二元謂詞
有沒有辦法來重寫ruby如何比較每個元素?
我想什麼做的是一樣的東西
a1.collect(&:name) <=> a2.collect(&:name)
沒有收集,因爲這是創建兩個新的陣列(例如,如果我們正在整理一個數組的數組,大量的時間是花在分配器上)。
我可以寫我自己的字典學比較函數,但是這看起來很反ruby,我不確定它是否會更快,因爲在ruby空間花費的時間(vs C空間)。
編輯:另一個例子將是對兩個字符串數組進行不區分大小寫的比較。