AR삽질러

Ruby 配列 본문

Ruby/Ruby-日本語

Ruby 配列

아랑팡팡 2023. 12. 18. 13:21
728x90

 

Ruby 配列

 

配列

 - 複数のデータをまとめて格納できるオブジェクトのこと。

 - 配列内のデータ(要素)は順番に並んで、添字(インデクス)を指定することで、データを取り出せる。

 

配列の作成

 - 空の配列を作る

  [ ]

3つの要素が格納された配列を作る

  [ 要素1, 要素2, 要素3 ]

 

配列の生成と使用

配列生成

 -  配列は'[ ]'を使って生成する。

arr = [1, 2, 3, "hello", [1, 2, 3], nil]

 

要素接近

 - 特定のインデクスの要素に接近するためには 'arr[index]' 形式を使う。

puts arr[0]
# 出力
puts arr
p arr
pp arr

 

要素追加

 - '<<' 演算子もしくは 'push' メソッドを使って配列の最後に新しい要素を追加できる。

arr << 4
arr.push(5)

 

要素削除

 - 'pop' メソッドを使って配列の最後の要素を削除し変換できる。

arr.pop
# arr = [1, 2, 3, "hello", [1, 2, 3]]

 

 

配列結合

 - '+' 演算子で二つの配列を結合できる。

arr1 + arr2

 

反復

 - 'each' メソッドで配列の各要素について反復作業を行う。

arr.each do |element|
	puts element
end

 

選択及び変更

 - 'select', ',map' のようなメソッドを使って配列の要素を選んだり変更できる。

even_numbers = arr.select { |element| element.even? |
# even_numbers [2, 4]

 


shift メソッド

 - z.shiftは 'z' の最初の要素を削除し返す

uniq メソッド

 - 重複された要素を削除し新しい配列を 返す

join メソッド

 - 全ての要素をひもつけて一つの文字列に変換する。

sort メソッド

 - s.sort : 配列sの要素を並べる。 デフォルトで、昇順に並べ替えらる。
 - s.sort.reverse : 配列sを整列した後、結果を反転(降順)する。
 - s.sort!.reverse! : sort!とreverse!メソッドは配列s自体を変更する。 sは降順に並べ替えられた配列

sizeメソッド

 - 配列sの長さを 返す

irb(main):015> z
irb(main):023> s = ['my', 'name', 'is', 'Arang']
=> ["my", "name", "is", "Arang"]
irb(main):024> s
=> ["my", "name", "is", "Arang"]
irb(main):025> s.join
=> "mynameisArang"
irb(main):026> s.join(' ')
=> "my name is Arang"
irb(main):027> s.join('_')
=> "my_name_is_Arang"
irb(main):028> s.sort
=> ["Arang", "is", "my", "name"]
irb(main):029> s.class
=> Array
irb(main):030> s.sort.reverse
=> ["name", "my", "is", "Arang"]
irb(main):031> s.sort!.reverse!
=> ["name", "my", "is", "Arang"]
irb(main):032> s
=> ["name", "my", "is", "Arang"]
irb(main):033> s.size
=> 4

 

 


 

問題1:配列の要素合計を求める

def sum_array(arr)
    sum = 0
    arr.each do |num|
        sum += num
    end
    sum
end

puts sum_array([1, 2, 3, 4, 5])

 

 

 

 

 

 

 

728x90
반응형
LIST

'Ruby > Ruby-日本語' 카테고리의 다른 글

Ruby 戻り返し処理  (0) 2023.12.18
Ruby ハッシュ  (0) 2023.12.18
Ruby 出力puts, print, p, pp  (0) 2023.12.16
Ruby FizzBuzzメソッド  (0) 2023.12.15
Ruby Method  (0) 2023.12.15