Ruby のお勉強 - 変数・定数 -
公開日:2014-12-21 更新日:2019-05-13
[Ruby]
変数・定数
a = 5
print a
putc "\n"
b = "abc"
print b
##src|5
abc
##/e##
変数は宣言しなくても使える。但し、初期化していない変数を使うとエラーになる。また、途中で他の型の値を入れることもできる。
a = 1
A = 2
print A
##src|2
##/e##
変数名は大文字・小文字が区別される。a = nil
print a.class;
##src|NilClass
##/e##
nil は null みたいなものだけど、オブジェクトのため、classメソッドが実行できる。初期化していない変数に対して .class をするとエラーになる。
_ = 1
print _
##src|1
##/e##
_(アンダースコア)だけでも変数にできる。print 123.class ; puts "\n"
print 12345678901.class; puts "\n"
print (123.1).class ; puts "\n"
print "abc".class ; puts "\n"
##src|Fixnum
Bignum
Float
String
##/e##
.class で、変数の型が取得できる。a = true
print a.class; puts "\n"
b = false
print b.class; puts "\n"
##src|TrueClass
FalseClass
##/e##
boolean かと思ったら、true と false で型が違うみたい。a = 1073741823
print a.class; puts "\n"
a = a + 1
print a.class; puts "\n"
a = a - 1
print a.class; puts "\n"
##src|Fixnum
Bignum
Fixnum
##/e##
Fixnumに入らなくなると、自動的に型がBignumに変わる。と言うよりも、代入する時に、毎回数値オブジェクトが再生成されているっぽい。