Entry 3621

array monkeypatching

   

Submitted by anonymous on April 23, 2010 at 8:16 a.m.
Language: Ruby. Code size: 561 bytes.

######### MIXIN

module SplittableArray
  def split_by_half
    middle = (self.size.to_f / 2).floor
    return [self[0..middle], self[middle+1..self.size]]
  end
end

some_array = [1, 2, 3, 4, 5]
some_array.extend SplittableArray
some_array.split_by_half # => [[1, 2, 3], [4, 5]]


######### MONKEY PATCH ARRAY

class Array
  def split_by_half
    middle = (self.size.to_f / 2).floor
    return [self[0..middle], self[middle+1..self.size]]
  end
end

another_array = [6, 7, 8, 9, 10]
another_array.split_by_half # => [[6, 7, 8], [9, 10]]

This snippet took 0.01 seconds to highlight.

Back to the Entry List or Home.

Delete this entry (admin only).