超初歩的なRubyのコマンドを学ぶ際のアウトプット&備忘録としてまとめていく。
greetingを使用して“Hello World”を表示
greeting = "Hello Would"
puts greeting
配列
配列の中を並び替えて大きい順に表示
numbers = [2, 9 ,1, 5, 3, 2, 8]
puts numbers.sort.reverse
配列の中をシャッフルして表示
numbers = [2, 9 ,1, 5, 3, 2, 8].shuffle
puts numbers
配列の中の合計を表示
a = [2, 9 ,1, 5, 3, 2, 8]
puts a.sum
配列の中の平均値を表示(少数)
a = [2, 9 ,1, 5, 3, 2, 8]
puts a.sum.to_f / a.size
mapを使った配列
numbers = [100, 200, 300, 400]
results = numbers.map do |number|
number / 10
end
p results
ハッシュ
色々な言葉遊び
messages = {"お客様": "神様", "そうです、私": "変なおじさん", "本日": "晴天", "明日": "雨", "本当": "嫌い", "イルカ": "哺乳類", "神戸": "県庁所在地", "AWS": "難しい", "でも気持ちだけ": "負けたくないん", "だから": "頑張ろうって思うん"}
messages.each do |famous, saying|
puts "#{famous}は#{saying}です"
end
だんだん眠くなる・・・。
sheep = 0
while sheep < 100
sheep += 1
puts "羊が#{sheep}匹"
end
この眠くなるコードはsleepとThread.newのクラスの情報を共有してもらい修正を加えたもの。
元々は上のようなコードで一気に表示されていたが、この応用を加えることで本当に数えて眠りに落ちるような状態に持っていくことができた。
# 修正版
sheep = 0
while sheep < 100
sheep += 1
puts "羊が#{sheep}匹"
end
↓修正版
it = Thread.new do
sleep
puts "羊がZZZzzz...sss"
end
sheep = 0
while sheep < 5
sheep += 1
sleep(1.6)
p "羊が#{sheep}匹"
end
puts "羊が...匹....."
sleep (7)
it.run
<br />
ハッシュメソッド
ハッシュは複巣のオブジェクトをまとめることができる入れ物です。
複巣のデータを扱えることは「配列」と同じだがハッシュは「キーと値」の
セットで複数のデータを扱うことができる。
例:カフェのメニューでコーヒー300円、カフェラテ400円は以下のように書ける。
{:coffee => 300, :caffe_latte => 400}
#キーがシンボルの場合の書き方
menu = {coffee: 300, cafelatte: 400}
p menu[:coffee]
#キーがシンボル以外の場合の書き方
menu = {:coffee => 300, :cafelatte => 400}
p menu[:coffee]
✨シンボルとは・・・
シンボルは文字列と似ているオブジェクトで、文字列は””のようにDCで囲むが
シンボルは:から始めるので注意。
シンボルも文字列や整数と同じようにオブジェクトの種類の一つで、シンボルのクラス名Symbolと書く。
■ハッシュへキーと値の組みを追加する
menu = {coffee: 300, cafelatte: 400}
menu[:mocha] = 500
p menu
■ハッシュは同じキーを複数持てない
追加した情報は上書きされるので、既にある情報を上書きしたい時は追加する
✨存在しないキーを指定した時は「nil」が返ってくる。
■ハッシュからキーと値の組みを削除する
削除するときはdelete+(キー名)メソッドを使用する
menu = {:coffee => 300, :cafelatte => 400}
menu[:mocha] = 500
menu.delete(:coffee)
p menu
■ハッシュの要素を繰り返し処理する
menu = {:coffee => 300, :tea => 400}
menu.each do |key, price|
puts"#{key}は#{price}円です。"
end