[[Ruby]]

Rubyにおける配列の変化を求めるには、差分を出すと便利なんだけど……ちょっと面白いところがあるのよね。

ちょっと紹介してみるわね。

たとえば、以下のコードはどうなると思う?

 a = [1,2,3,4,5,6]
 b = [6,5,5,3,2,1,4]
 p a - b

この結果は、実は以下になるの。

 []

なんと差分なし。


「なんだよそれ」って思う?じゃあ、以下をやったらどうなるかしら?

 a = [1,2,3,4,5,6]
 b = [6,5,4,3,2,1]
 p a - b

実はこれも差分なしになるんだけど……こう書くとわかりやすくない?

すなわち ''Rubyにおける配列の差分は、要素があっていれば順序は気にしない'' ってこと。

だから上のコードをいじって、こうやると?

 a = [1,2,3,4,5,6]
 b = [6,5,5,3,2,1]
 p a - b

これの答えは「 ''4'' 」よ。

バラバラの配列の比較って、よくあるわよね。興味深い事だと思うわ。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS