「初めての Ruby」 一人勉強会1日目(2限目)
なんとなく Ruby を勉強しています。
教材はコレ↓
初めてのRuby
第2章に突入です。配列とハッシュについて学びます。
以下、つぶやきメモ。
※1 今のところ、正直あまり Ruby は好きではありません。
※2 オイラがまともにそこそこ書ける言語は C#, Java(5.0より前), Perl です。言語の機能を語っているときはその辺との比較になっているはず
※3 Ruby はまだまったく理解していないので、的外れでトンチンカンな批判してるかも
irb での日本語の取扱い (p.30 例2-1)
irb(main):008:0> c=[a, b, 3, "文字列"] => [1, "str", 3, "\312\270\273\372\316\363"]
print するときは大丈夫みたい。
print c
1str3文字列=> nil
当面は「こういうもの」として受け入れた方がよさそう。
つーか最初見たときはびっくりしたけど、ただ単にコードが入っているだけなのね。
長さ付き添字と Perl の配列スライス (p31 例2-5)
c[1, 3]
1 が開始インデックスで、3 が長さ。
c[1..3]
も書けて、Perl と同じ意味らしい。Perl 屋さん上がりはこっちを使った方が良さそうだなぁ。
うっかり
c[1, 3, 5]
とか書いてしまいそうだよなぁと思い、やってみたら、
wrong number of arguments (3 for 2) (ArgumentError)
とか怒られた。エラーになるのならまあいいか。(引数 2個の場合は死亡だけど...)
それにしても、「passwd ファイルから特定のフィールドだけぶっこ抜く」とか、Ruby の配列だとやりにくそうだけど、なんか良い方法あるのだろうか?
配列に対する演算(p.34 例2-10)
irb(main):001:0> array = ["a", "b", "c"] => ["a", "b", "c"] irb(main):004:0> array *= 2 => ["a", "b", "c", "a", "b", "c"]
...使い道があまり思い付かないけど、凄い。
と、いうことで第2章終了。びっくりや「えー」と思うような仕様は減ってきた。慣れて来たのかなぁ。
第3章に続く。(多分)