W języku Ruby występuje różnica między funkcjami each
, map
i collect
?Jaka jest różnica między mapą, każdą i kolekcją?
55
A
Odpowiedz
107
each
różni się od map
i collect
, ale map
i collect
są takie same (technicznie map
jest aliasem dla collect
, ale z mojego doświadczenia map
służy dużo częściej).
each
pełni zamknięty blok dla każdego elementu (Enumerable
) odbiornika:
[1,2,3,4].each {|n| puts n*2}
# Outputs:
# 2
# 4
# 6
# 8
map
i collect
wytwarzania nowego Array
zawierające wyniki bloku stosowanej do każdego elementu odbierającego:
[1,2,3,4].map {|n| n*2}
# => [2,4,6,8]
Istnieje również map!
/collect!
zdefiniowany na Array
s; oni modyfikować odbiornik w miejscu:
a = [1,2,3,4]
a.map {|n| n*2} # => [2,4,6,8]
puts a.inspect # prints: "[1,2,3,4]"
a.map! {|n| n+1}
puts a.inspect # prints: "[2,3,4,5]"
21
Each
oceni blok ale wyrzuca wynik oceny Each
bloku i przywraca oryginalną tablicę.
irb(main):> [1,2,3].each {|x| x*2}
=> [1, 2, 3]
Map
/collect
powrotu szereg skonstruowany w wyniku wywoływania blok dla każdej pozycji w tablicy.
irb(main):> [1,2,3].collect {|x| x*2}
=> [2, 4, 6]
Powiązane problemy
- 1. Jaka jest różnica między grep i mapą w Perlu?
- 2. Jaka jest różnica między mapą a zastosowaniem w schemacie?
- 3. Python Multiprocessing: Jaka jest różnica między mapą a imapem?
- 4. Ruby: Jaka jest różnica między pętlą for a każdą pętlą?
- 5. Jaka jest różnica między? : i ||
- 6. Jaka jest różnica między $ i $$?
- 7. Jaka jest różnica między * zoomem i zoomem?
- 8. W kontraktach terminowych na Scala Akka, jaka jest różnica między mapą a mapą flat?
- 9. F #: Różnica między Słownikiem, Hashtable i Mapą
- 10. Różnica między mapą a dyktowaniem
- 11. Różnica między mapą a każdym
- 12. Jaka jest różnica między Subtotal i BaseSubtotal?
- 13. Jaka jest różnica między DetachedCriteria i ICriteria
- 14. Jaka jest różnica między & # x00A0; i ?
- 15. Jaka jest różnica między lex i yacc
- 16. jaka jest różnica między dijit i dojo
- 17. Jaka jest różnica między Control.Select() i Control.Focus()?
- 18. Jaka jest różnica między System.Windows.Controls.Control i System.Windows.Forms.Control?
- 19. Jaka jest różnica między apletami i SWING?
- 20. Jaka jest różnica między session.commit() i session.flush()?
- 21. Jaka jest różnica między ImageView.setBackgroundResource i ImageView.setImageResource?
- 22. Jaka jest różnica między Konwertuj i parsuj?
- 23. Jaka jest różnica między JSP i JSTL?
- 24. Jaka jest różnica między Lazarus i CodeTyphon
- 25. Jaka jest różnica między crc32 i crc32b?
- 26. Jaka jest różnica między TypedArray.getInteger() i TypedArray.getInt()?
- 27. jaka jest różnica między ARM7 i ARM7s
- 28. Jaka jest różnica między http_build_str() i http_build_query()?
- 29. Jaka jest różnica między "CompletionStage" i "CompletableFuture"?
- 30. Jaka jest różnica między mock.patch.object (... i mock.patch (
mapa jest wybieraną przez społeczność wersją https://github.com/bbatsov/ruby-style-guide#map-fine-select-reduce-size –