Ruby基礎①
1年ぶりに勉強再開。 ドットインストールの内容メモ
出力メソッド
printメソッド
改行なしで値を出力
putsメソッド
改行付きで値を出力
pメソッド
値に加えて型情報も出力される 文字列はダブルクォーテーションで囲まれたまま出力されるような感じ
printf
書式を指定して出力
変数・定数
変数
変数の場合はアルファベット小文字を使用する 例:name
定数
定数の場合はアルファベット大文字で始める 例:NAME
定数に値を代入しようとするとエラーが出るものの、処理は中断されない。 エラーは放置しないように注意
StringClass
.length
文字列の長さを返却する
.reverse
中身を反転させて出力させる
FloatClass
.round
四捨五入
.floor
小数点以下切り捨て
.ceil
小数点以下切り上げ
数値オブジェクト
.class
クラス情報を参照する
.methods
使用できるメソッドを確認する
分数
以下のように書く
p Rational(2,5) + Rational(2,5)
2/5r + 2/5r
のように表現することも可能
文字列オブジェクト
puts "hell\no worl\td"
上の例の場合、ダブルクォーテーションのときは改行とタブが反映されるが
puts 'hell\no worl\td'
の場合は入力されたものをそのまま出力する
puts "price #{3000 * 4}" => price 12000
puts 'price #{3000 * 4}' => price #{3000 * 4}
また、変数を渡すことも可能。その場合は
name = "taro" puts "hello #{name}"
のように記述する。
文字の連結
puts "hello" + "world" => helloworld
文字の繰り返し
puts "hello" * 10 => hellohellohellohellohellohellohellohellohellohello
!
upcase upcase! 破壊的なメソッド downcase reverse
name = "taro" puts name.upcase => TARO puts name => taro puts name.upcase! => TARO puts name => TARO
のように保持される
? 真偽値 true false
hello = "Hello World!!" p hello.empty? => false p hello.include?("l") => true
配列
colors = ["red","blue","yellow"] p colors[0] => "red" p colors[-1] =>"yellow" p colors[0..2] => ["red","blue","yellow"] p colors[0...2] => ["red","blue"] p colors[5] =>nil colors[0] = "pink" colors[1..2] = ["white","black"] colors.push("gold") colors << "silver" p colors => ["pink","white","black","gold","silver"] p colors.size =>5 p colors.sort => ["black","gold","pink","silver","white"]