2013-05-14から1日間の記事一覧
# -*- coding: utf-8 -*- a = [1, 2, 3, 4, 5] b = a.collect! {|item| # ブロックの評価式をレシーバの値に返す item * 2 } p b この手のブロック評価を返す仕組みがどうも取っ付きにくい。 collectメソットはブロックで行った処理を1つの配列にまとめて返…
完全にメモ 破壊的なメソッドと非破壊的なメソッドの両方を提供する場合、破壊的なメソッドには`!'を付ける。
# -*- coding: utf-8 -*- 後はコードを書くだけ。
ループのさせかた色々あるみたいで。 # iをインクリメントしながら10を超えるまで繰り返す ary = [] 10.times do |i| ary << i end p ary # iをレシーバーの値からインクリメントしながら10になるまで繰り返す # iがuptoの引数を超えるまで繰り返す ary = []…
ary = [] ary << "hoge" こう書ける。 書き方が多いのは慣れれば良いんでしょうが。。。
def est_throw # catchで指定したものと同じシンボルが指定されてるから呼び出し元のブロック終了 throw :test end puts "test start # ブロックの同じシンボルを引数にしてthrowを呼ぶとブロックを終了 catch(:test) do puts "before test_throw()" # メソ…
MyError = Class.new(StandardError) こんな風に書いておくと class MyError < StandardError end と同じ意味になる。 何も変えない時に使えるみたいだけど。 何も変えないのにどう使うんだろ。。。 読み方として書いておく。