ぽざうねっと

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  420  : 記事  0  : コメント  9436  : トラックバック  76

ニュース

さて、今年は何を漬けようか

書庫

日記カテゴリ

Accessory

Community

Private

Ruby の配列は負数でのインデックスアクセスができるらしい。
nums = [ 1, 2, 3, 4, 5 ]
とあったとして、
nums[0] => 1
nums[1] => 2
nums[2] => 3
nums[3] => 4
nums[4] => 5
となる。
まあ、ここまでは普通の配列と同じ。
しかし、インデックスに負数を使うと逆からアクセスできる。
nums[-1] => 5
nums[-2] => 4
nums[-3] => 3
nums[-4] => 2
nums[-5] => 1
となる。
なんか、対称じゃないのがすごくむずがゆい。
投稿日時 : 2008年1月24日 1:02

コメント

# re: Ruby の配列 2008/01/24 10:21 ddnp
Rubyは勉強不足で触れたことは無いですけど
これはちょっとおもしろいですね。

[begin, end)として、ゼロ以上ならbeginからのoffset
逆ならendからのoffsetでアクセスできる仕様なのかな

使いみちが何かあると思うんですけど・・・目的は何なんだろう

# re: Ruby の配列 2008/01/24 12:30 THREE-ONE
私もまだ勉強始めたばかりでよくわかっていませんが、一番最後の値が -1 固定で取得できるというのは楽かもしれませんね。
length 属性にアクセスしなくてもいいわけですし。(内部的にはインデックスが負ならば length 足してたりして)
いろんなコレクション系を実装する際に便利なんでしょうか?


# re: Ruby の配列 2008/01/24 15:12 凪瀬
便利そうだけど、記法としてはキショクワルイ。

# re: Ruby の配列 2008/01/24 17:00 THREE-ONE
> キショクワルイ
それは同感。
配列には便利なメソッドがちゃんといろいろあるので、あまり使うものでもなさそうです。

Post Feedback

タイトル
名前
Url:
コメント: