1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ruby 配列の基本的な使い方。いろんなメソッドも紹介❗️

Last updated at Posted at 2021-08-16

配列とは

簡単にいうとデータのかたまりのことです。
つまりデータをたくさん詰められるタンスのような役割をしています。
そして、データ1つ1つは箱のようなもので、要素と呼んでいます。

例えば、それぞれ名前(文字列)を格納するようなイメージになります。

箱1つ1つには番号が振られていて、この番号を添字と呼んでいます。添字は0から始まります。

配列の生成と定義

⚫︎配列の生成

array = Array.new    #arrayは配列のこと   #Arrayは配列を表すclass
array = []    #角カッコ(bracket)は配列を表す。

⚫︎配列の使い方

#配列の初期化
array = []

#数字の配列
numbers = [10,20,30]

 文字列の配列
animals = [ "dog",cat, bird , "lion" ,"monkey" ,"rabbit" ]

# 様々な要素の配列
items = ["poo", 200, "bar" , false , nil]

配列のメリット

配列のメリットはいろんなデータをまとめて扱えるので便利な処理ができます。

#例 以下のa,b,c の中の最大値は?
a = 10
b = 20
c = 30

numbers = [a,b,c]
puts numbers.max   #maxメソッドを使うことで,簡単に最大値を出せる。minメソッドで最小値

#補足  下のやり方で最小値と最大値が出せます。

[3, 5, 1, 2, 4].minmax  # => [1, 5]

配列のデータの取得

⚫︎配列のデータの取得

numbers = [16,32,64]
numbers[0]
#要素の番号を添字で指定する。  ***添字(index)は0から始ます。
numbers = [10,20,30,40,50]

#例  上記の配列の1つ目の要素を取得せよ
puts numbers[0]

#例  上記の配列の2つ目の要素を取得せよ
puts numbers[1]

#例  上記の配列の4つ目の要素を取得せよ
puts numbers[3]

#例:上記の配列の最後の要素を取得せよ
puts numbers[-1]

配列の追加, 更新 ,削除

scores = [10,20,30,40,50]

#追加
scores << 100    
[10, 20, 30, 40, 50, 100]

scores.push(20)       *ruby()を省略してもok
=> [10, 20, 30, 40, 50, 20]

#更新
scores[1] = 10
=> [10, 10, 30, 40, 50, 20]


#削除
scores.delete_at(2)   *3つ目の要素を削除
=> [10, 20, 40, 50]

sports = ["サッカー", "バスケ", "野球", "バレー"]
# 例
sports.delete("サッカー")

配列のメソッドの調べ方

配列にはいろんなメソッドがあります。覚えるより調べることが大切です。

⚫︎pryで調べる

[1] pry(main)> ls []
でメソッドを調べることができます。

Rubyの色々なメソッド

よく使うものからマイナーなものまであります。
興味があるものから調べてください。

⚫︎push

animal = ["犬","猫","鳥","象","猿"]
animal.push "ライオン"
puts  animal






ライオン と出力

puts  animalputsprintにすると
["犬", "猫", "鳥", "象", "猿", "ライオン"] と出力
# 補足 
#putsとprintの違いは改行をするかしないかの違いです。

他に似たものはpop,shift,unshiftなどがあります。

⚫︎size count length

number = [10,20,30,40,50,true,false,nil,true,nil,false]
puts number.size
puts number.count
puts number.length

11と出力

#size count lengthの違い
#例えばtrueの数を数えたい
#puts number.count(true)で2と出てきます。
#size 大きさ length長さ

⚫︎sample

 fish = ["マグロ","サケ","イワシ","アジ"]
 random_fish = fish.sample
 puts random_fish 
 #上の魚の種類がランダムに出てきます

⚫︎prepend

#先頭に配列を追加します。

animal = "速い"
animal.prepend("チーター") 
puts animal                   

#チーター速いと出力されます。

⚫︎maxとmin

#最大値と最小値を同時に出力
level = [5,60,80,100,90,30]
puts level.minmax

#5と100が出力

⚫︎drop

#先頭の 要素を捨てて、残りの要素を出力
 score = [10,20,30,40,50,60]
 puts score.drop(3)
 
#40,50,60が出力

補足

投稿日 2021年08月20日に投稿した記事と合わせた記事です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?