Enumerable
není datový typ ale množina operací (mixin) nad třídami, které implementují metodu each
. Pokud mají být použity metody max
, min
a sort
, musí třída definovat smysluplně operátor <=>
, který vlastně nad třídou definuje pořadí/řazení prvků.
Nejprve se podíváme na metody které transformují seznam na jiný seznam. Takové jsou zejména ale nejen: collect
, map
, sort
method(Array) → Array
Jedná se o operace/metody: inject, reduce, zip
Array → Value
Array,Array → Array
Array → Array,Array
irb(main):....>
a=[1,2,3]irb(main):....>
b=%w(a b c)irb(main):....>
a.zip(b)=> [[1, "a"], [2, "b"], [3, "c"]]