LoginSignup
5
3

More than 5 years have passed since last update.

【自分メモ】rubyのコード練習はこれできまいり!「irb」コード確認にも使える。ん?nilってなに?nilとは?

Posted at

正月はもち食べた千葉です。もちもち。
今日は、自分用のメモなのです。
当たり前のこと書いてるかもしれません。
完全なる自分用メモなのです。

irb使ってみる

irbを使うと、rubyをshやbashみたいに使えます。

$irb
irb(main):001:0> puts "hello.world"
hello.world
=> nil
irb(main):002:0> 
irb(main):003:0* 
irb(main):004:0* quit

echoみたいですね。
便利です。これで練習しまくりです。

あと、rubyは()を省略できる。人にやさしい。

以下、どちらでも書けます。

irb(main):002:0* puts("banana")
banana
=> nil
irb(main):003:0> 
irb(main):004:0* puts "banana"
banana
=> nil
irb(main):005:0> 
irb(main):006:0*

ん?「nil」っってなんぞおぉぉおぉおぉぉおぉーー??煮る?nilとは?

なぜ「puts」は「nil」を返しているかが疑問
調べたけどあんまり腹に落ちてない。

irb(main):006:0* a=
irb(main):007:0* puts a
nil
=> nil
irb(main):008:0> 

nilは何も代入されてないってこと。変数にはデフォルトでnilが入ってるみたい。ふむ。つまり空ということ。

true,false,nil
真:true
偽:false,nil

さらにわからんくなりますね。私だけ?
nilだったら偽と判定。

で、なぜ「puts」は成功しているのに偽である「nil」を返しているか。putsの戻り値はnilです。決まってますと言われたら、そうですかとしか言えません。パニック。

と、思ったらヒラメめき&腹に落ちた。
「puts」の戻り値(return値)は、なし(空)ですよという意味ですか。奥が深い。

5
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3