タグ

ブックマーク / mickey24.hatenablog.com (2)

  • Rubyにおける==,===,eql?,equal?の違い - ぬいぐるみライフ?

    どれが何なのかたまに混乱するのでメモ. == オブジェクトの同値性のチェック クラスやオブジェクトの性質に合わせて再定義できる === オブジェクトの同値性のチェック(所属性を加味) case式で使われる クラスやオブジェクトの性質に合わせて再定義できる eql? オブジェクトの同値性のチェック(==より厳密) Hashで二つのキーが等しいかどうかを判定するのに使われる クラスやオブジェクトの性質に合わせて再定義できる 再定義した場合はhashメソッドも再定義しなければならない equal? オブジェクトの同一性のチェック object_idが一致するかどうかを調べる 再定義してはならない 比較表 効果使用場面再定義 ==同値性のチェック同値性のチェック○ ===同値性のチェック(所属性)case式○ eql?同値性のチェック(厳密)Hashキーの比較○(※) equal?同一性のチェック

    Rubyにおける==,===,eql?,equal?の違い - ぬいぐるみライフ?
  • Rubyによるワンライナーのまとめ - ぬいぐるみライフ?

    Rubyでワンライナーを書く際によく使うコマンドライン引数と具体例をまとめてみた. 基 -e : コマンドラインからスクリプトを指定 コマンドラインからスクリプトを指定する場合に使う.ワンライナーでは必須. $ ruby -e 'puts "Hello, world!"' 行単位の処理 -n : 各行ごとに処理 プログラム全体が以下のwhileで囲まれているように動作する. while gets ... end 標準入力やファイルの各行に対して処理を行いたい場合に便利.getsの結果は$_に格納される. $ ruby -ne 'puts $_ if $_.include?("mickey24")' foo.txt -p : 各行ごとに処理&出力 -nとほぼ同様だが,各ループの最後で print $_ が実行されるようになる.標準入力の各行に対して処理を行いつつ出力していく場合に便利. $

    Rubyによるワンライナーのまとめ - ぬいぐるみライフ?
  • 1