實現對集合成員的訪問有沒有什麼辦法可以通過[]實現對集合成員的訪問。我的意思是我必須編程一個鏈表,我想通過Coll [int]訪問成員。有沒有辦法做到這一點?Ruby通過[]
Ruby通過[]
回答
你的鏈表是它自己的類嗎?如果是這樣,你可以定義[]
方法該類:
class LinkedList
...
def [](int index)
node = @head
index.times do
node = node.next
end
node
end
end
此代碼假定成員變量@head
引用列表中的第一項,而#next
返回列表中的下一個條目的方法。它假定從零開始編制索引,並且索引超出範圍沒有錯誤處理。
在使用中,你叫什麼你想要的方式:
linked_list[2]
紅寶石對待這個就好像你這樣寫:
linked_list.[](2)
這兩種語法是等價的,但一個正常寫首先,形式較短。
確定但我不需要像[](7)那樣調用它? – user2184057 2013-05-13 21:42:32
@ user2184057,我已經添加了如何調用它的解釋。 – 2013-05-13 21:45:28
非常感謝你,我認爲我得到了重點:)我認爲我需要實施mixins之一:) – user2184057 2013-05-13 21:46:48
- 1. 通過RPC訪問Ruby從Ruby通過RPC訪問Ruby
- 2. Ruby on Rails:has_many通過挫折
- 3. 通過Ruby訪問Evernote API
- 4. Ruby通過很多參數
- 5. 通過Ruby Gem共享CSS
- 6. 如何通過在Ruby中
- 7. 迭代通過在Ruby中
- 8. 通過jsp調用ruby
- 9. 通過RVM安裝ruby 2.0.0
- 10. Ruby On Rails Mongoid Group通過
- 11. 通過Ruby的SQL通配符
- 12. 的Ruby-on-軌道:通過PARAMS通過路由及的link_to
- 13. Ruby包未通過cronjob運行
- 14. 從Ruby通過COM調用C#.dll
- 15. Ruby與Rspec - 此測試如何通過?
- 16. 如何通過ruby導出json文件?
- 17. has_many通過Ruby on Rails應用程序
- 18. 通過腳本運行ruby文件
- 19. 如何通過Ruby on Rails消除FOUC?
- 20. 通過ssh使用ruby更新文件
- 21. 通過HTTPS Ruby on Rails進行POST
- 22. Ruby on Rails,Low Pro和JQuery(通過JRails)
- 23. 在ruby中通過ioctl獲取essid
- 24. 通過Web公開任何Ruby對象
- 25. 通過system調用iconv來自Ruby()
- 26. 通過ruby腳本防止SQL注入
- 27. Ruby/Rails通過ID查找對象
- 28. 在ruby中通過引用更改值
- 29. ruby on rails has_many通過關係
- 30. Bing搜索API通過Ruby curb
您可以請發佈鏈接列表實施的相關摘錄嗎? – 2013-05-13 21:42:00