2014-01-01から1年間の記事一覧
初歩的かもしれないが躓いたのでメモ class Person attr_accessor :name def initialize(name) @name = name end end john = Person.new("John") john.freeze (john.name = "Tony") rescue p $! #=> #<RuntimeError: can't modify frozen Person> str = String.new("Hello!") str.freeze str = "Hi!" st</runtimeerror:>…
気になったことがあったのでメモ def classtree(obj) tree = Array.new tree[0] = obj.class i=0 while(tree[i] != nil) i += 1 tree[i] = tree[i-1].superclass end tree end nan = 0.0/0.0 #=> NaN pp classtree(nan) #=> [Float, Numeric, Object, BasicO…
# クラスを階層化して表示するメソッド def classtree(obj) tree = Array.new tree[0] = obj.class i=0 while(tree[i] != nil) i += 1 tree[i] = tree[i-1].superclass end tree end 使い方 classtree(String.new) #=>[String, Object, BasicObject, nil]
def time_check(loop = 1) start_time = Time.now loop.times do yield end end_time = Time.now end_time - start_time end 使い方 triples = "AAA".."ZZZ" time_include = time_check(10**6) { triples.include? "ABC" } puts time_include