トップ «前の日記(2016-04-04) 最新 次の日記(2016-04-06)» 編集

ヨタの日々

2001|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|12|
2024|01|02|03|

2016-04-05 :-(

_ やったこと

0600 起床

0830 労働

1700 退勤

1900 写真整理

2100 飯

_ 出たい人

ううむ。この each 連発というのがダサいというかもっとこうエレガントに ruby っぽくならないもんか。

require 'pp'

class Item
  attr_accessor :key, :value
  def initialize(key, value)
    @key = key
    @value = value
  end
end

class MCData
  attr_accessor :title, :items
  def initialize(title, items)
    @title = title
    @items = items
  end
end

def findbytitle(list, title)
  list.each {|mc|
    if mc.title == title
      return mc.items
    end
  }
end

def findbyitem(list, itemkey)
  list.each {|mc|
    mc.items.each {|i|
      if i.key == itemkey
        return i.value
      end
    }
  }
end

def main(argv)
  item_a ||= []
  item_a << Item.new( :a, 1 )
  item_a << Item.new( :b, 2 )
  item_a << Item.new( :c, 3 )
  
  item_b ||= []
  item_b << Item.new( :d, 4 )
  item_b << Item.new( :e, 5 )
  item_b << Item.new( :f, 6 )
  
  datalist ||= []
  datalist << MCData.new( "A", item_a )
  datalist << MCData.new( "B", item_b )
  
  pp datalist
  
  pp findbytitle( datalist, "A" )
  
  pp findbyitem( datalist, :a )

end

main(ARGV)