Dlaczego .all? zwraca true na pustej tablicy?
Używanie Ruby Chcę ocenić wszystkie elementy w tablicy i zwrócić true, jeśli wszystkie przejdą test warunkowy.
Mogę to zrobić używając np.array.all? { |value| value == 2 }
Więc:
> array=[2,2]
> array.all? { |value| value == 2 }
=> true
> array=[2,3]
> array.all? { |value| value == 2 }
=> false
Świetny!
Ale dlaczego pusta tablica przechodzi ten test?
> array=[]
> array.all? { |value| value == 2 }
=> true
Czy nie powinno to być fałszywe?
A jeśli potrzebuję go zwrócić false, jak mam zmodyfikować metodę?