FrontPage  Index  Search  Changes  Login

niche programmer - (Ruby)式 Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

!式
通常CやJavaで文になるものはRubyでは式になる。
result = if a == b
            'a'
          else
            'b'
          end
!! 演算子の再定義
class Fixnum
     alias oldPlus +
     def +(other)
         oldPlus(other).succ
     end
end
!! コマンド展開
文字列をバッククォートで囲むか、%x{}で囲むとオペレーティングシステムによりコマンドとして実行され、コマンドの標準出力が式の値になる。
`date`
%x{echo "Hello world"}
コマンドの終了ステータスは$?で参照可能。

!!代入の入れ子
代入の左辺に括弧付きリストをおくことができる。
a, (b, *c), d = 1, [2, 3, 4], 5  #=> a ==1, b ==2, c == [3, 4], d == 5
!!!比較演算子
||==||等価性のテスト
||===||case文のwhen節での等価性のテスト
||<=>||レシーバが引数より小さいときは-1、等しい時は0、大きい時は+1
||<,<=,>=,>||より小さい、以下、以上、より大きい
||=~||正規表現パターンマッチ
||eql?||レシーバと引数の型と値が等しい場合にtrue。
||equal?||レシーバと引数のオブジェクトidが同じ時true。