SuzuBlog

webのお勉強はじめたばかりの初心者。備忘録

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"]