Ruby簡潔学習ノート(一):文字列、数字、クラス、オブジェクト
2063 ワード
Rubyが本当に使いやすいことを証明するために、hello worldもこんなに簡潔に書くことができます.
1.入出力
注:ルビーは大文字と小文字を区別しています
2.Stringクラス
puts(「Hello#{name}」)の変数nameはString全体に埋め込まれ、#{}ラップで埋め込まれて値を求め、二重引用符「」でラップされます(単一引用符だけでは文字値が返されます).変数だけでなく、「t」や算数式を埋め込むこともできます.
3.if......then文
1.各ifはendに対応する必要があり、thenはifと同じ行にない限り、オプションである.2.to_f()メソッドは、値が浮動小数点数のStringに対して浮動小数点数自体を返し、変換できない者に対して0.0を返す
4.val、$val、@valの違い
valはローカル変数、$valはグローバル変数、@valはインスタンス変数
インスタンス変数はメンバー変数に相当します
5.classを定義する方法
2つのコードを見て
1.メンバー変数は@で表示する必要がある.無参法は()3を加えなくてもよい.各クラスはendで終了する.デフォルトでは、パラメータ付きinitialize()を書き換えるか、パラメータ付きinitialize()を書き換えることができます.
puts 'hello world'
1.入出力
print('Enter your name')
name=gets()
puts("Hello #{name}")
注:ルビーは大文字と小文字を区別しています
2.Stringクラス
puts(「Hello#{name}」)の変数nameはString全体に埋め込まれ、#{}ラップで埋め込まれて値を求め、二重引用符「」でラップされます(単一引用符だけでは文字値が返されます).変数だけでなく、「t」や算数式を埋め込むこともできます.
puts "Hello #{showname}"
puts( "
\t#{(1+2) * 3}
Goodbye" )
3.if......then文
taxrate = 0.175
print "Enter price (ex tax): "
s = gets
subtotal = s.to_f
if (subtotal < 0.0) then
subtotal = 0.0
end
tax = subtotal * taxrate
puts "Tax on $#{subtotal} is $#{tax}, so grand total is $#{subtotal+tax}"
1.各ifはendに対応する必要があり、thenはifと同じ行にない限り、オプションである.2.to_f()メソッドは、値が浮動小数点数のStringに対して浮動小数点数自体を返し、変換できない者に対して0.0を返す
4.val、$val、@valの違い
valはローカル変数、$valはグローバル変数、@valはインスタンス変数
インスタンス変数はメンバー変数に相当します
5.classを定義する方法
2つのコードを見て
class Dog
def set_name( aName )
@myname = aName
end
def get_name
return @myname
end
def talk
return 'woof!'
end
end
class Treasure
def initialize( aName, aDescription )
@name = aName
@description = aDescription
end
def to_s # override default to_s method
"The #{@name} Treasure is #{@description}
"
end
end
1.メンバー変数は@で表示する必要がある.無参法は()3を加えなくてもよい.各クラスはendで終了する.デフォルトでは、パラメータ付きinitialize()を書き換えるか、パラメータ付きinitialize()を書き換えることができます.