ruby基本文法
Rubyの基本的な文法をさらっと。
変数とデータ型
Rubyは動的型付け言語なので、データ型を指定せずに変数を宣言できる。
name = "Alice"
name.class #=> String
bool = true
bool.class #=> TrueClass
age = 20
age.class #=> Int
height = 155.6
height.class #=> Float
文字列
ダブルクォーテーションまたはシングルクォーテーションで文字列を作成。
ダブルクォーテーション内では変数の値を展開できるという違いがある。
single_quoted = 'シングルクォーテーション'
double_quoted = "ダブルクォーテーション"
name = "Bob"
greeting = "Hello, #{name}!"
文字列同士で結合できる。
first_name = '太郎'
last_name = '田中'
name = last_name + first_name
puts "Hello, #{name}!"
数値演算
x = 10
y = 5
sum = x + y
difference = x - y
product = x * y
quotient = x / y
ブロック
条件文
if文。他の言語のelse ifとちがい、elsifを用いる。
if age >= 18
puts "成年です"
elsif age == 17
puts "永遠の17歳です"
else
puts "未成年です"
end
ループ
他言語と違い、for文は使わずにメソッドを用いることが多い。
5.times do
puts "hello"
end
fruits = ["りんご", "バナナ", "オレンジ"]
fruits.each do |fruit|
puts fruit
end
while文
i = 0
while i < 10 do
puts i
i += 1
end
配列
複数の値をまとめて扱うためのデータ構造。
fruits = ["りんご", "バナナ", "オレンジ"]
puts fruits[0] # "りんご"が表示される
fruits.push("グレープ") # 配列に要素を追加
fruits.pop("バナナ") # 配列から要素を削除
メソッド
関数のようなもので再利用可能。
def area(x, y)
x * y
end
puts(5, 6)
returnを省略できる。
クラスとオブジェクト
class Person
def initialize(name, age)
@name = name
@age = age
end
def introduce
puts "私は#{@name}で、#{@age}歳です。"
end
end
person = Person.new("David", 25)
person.introduce()