2013-05-14から1日間の記事一覧

Rubyのcollectでブロックの練習

# -*- coding: utf-8 -*- a = [1, 2, 3, 4, 5] b = a.collect! {|item| # ブロックの評価式をレシーバの値に返す item * 2 } p b この手のブロック評価を返す仕組みがどうも取っ付きにくい。 collectメソットはブロックで行った処理を1つの配列にまとめて返…

Rubyのコーディング規約,破壊的,非破壊的メソット

完全にメモ 破壊的なメソッドと非破壊的なメソッドの両方を提供する場合、破壊的なメソッドには`!'を付ける。

Ruby1.9で文字コードを指定する(日本語扱う)

# -*- coding: utf-8 -*- 後はコードを書くだけ。

Rubyで数え上げる

ループのさせかた色々あるみたいで。 # iをインクリメントしながら10を超えるまで繰り返す ary = [] 10.times do |i| ary << i end p ary # iをレシーバーの値からインクリメントしながら10になるまで繰り返す # iがuptoの引数を超えるまで繰り返す ary = []…

RubyのArrayクラスのpushと同じメソット

ary = [] ary << "hoge" こう書ける。 書き方が多いのは慣れれば良いんでしょうが。。。

Rubyのcatchとthrow

def est_throw # catchで指定したものと同じシンボルが指定されてるから呼び出し元のブロック終了 throw :test end puts "test start # ブロックの同じシンボルを引数にしてthrowを呼ぶとブロックを終了 catch(:test) do puts "before test_throw()" # メソ…

Rubyのクラス継承の書き方

MyError = Class.new(StandardError) こんな風に書いておくと class MyError < StandardError end と同じ意味になる。 何も変えない時に使えるみたいだけど。 何も変えないのにどう使うんだろ。。。 読み方として書いておく。