ume

Rubyメソッド

Ruby Any?メソッド

?#Anyメソッド ⇨ 配列やコレクション内の要素が1つでもブロック内の条件を満たす場合にtrueを返す。全てfalseの場合はfalseを返す 構文 #numbersの要素の中は全て3より上の数字か確認する. #1つでもブロック内の条件がtrueになる場合、trueを返して、条件全…

Ruby centerメソッド

centerメソッドとは? ⇨center メソッドは、レシーバーを真ん中に配置するためのメソッド. 引数に任意の数値を設定すると、その数値分の幅を持つ文字列の中でレシーバーが中央に配置される。必要に応じて、左右にスペースや指定した文字で余白が追加される。…

Ruby insertメソッド(配列と文字列で使用可能)

insertメソッドとは →配列や文字列内の任意の位置に任意の要素を挿入するメソッド 使い方 "文字列".insert(挿入したい場所,任意の文字) "Hello World".insert(5," Ruby") #出力結果 "Hello Ruby World" 配列.insert(挿入したい場所,任意の文字) arr = [1, 2,…

Ruby delete_ifメソッド

delete_ifメソッドとは ⇨ハッシュの中の要素をある条件で該当した場合、元のハッシュから削除する破壊的メソッドです。 例文 fruits = [ {name:"banana",price:150,inventry: true}, {name:"grape",price:300,inventry: false} ] puts fruits.delete_if{|fru…

Ruby start_with?メソッドとend_with?メソッド

概要 文字列の文頭が引数の文字列で始まるのかを調べるメソッド 使い方 "文字列".start_with?("文字列") 例: "mario".start_with?("ma") #出力結果 true "mario".start_with?("o") #出力結果 false 余談 似たようなメソッドにend_with?がある "文字列".end_w…

Ruby rejectメソッド使い方

rejectメソッドとは? ⇨配列内から特定の要素を除外する rejectメソッドの使い方 ブロック内({|num| num % 2 == 0})がfalseになったものだけを集めた配列を返す= 偶数の除外 [1,2,3,4,5,6].reject {|num| num % 2 == 0} #出漁結果[1,3,5] 参考情報 docs.ruby…

Ruby differenceメソッド

difference概要 ⇨1つの配列の中から該当する要素を取り除いた配列を戻り値として返す differenceメソッド構文 配列Aの配列からBの配列の要素を取り除いた配列を戻り値として返却する 配列A.difference(配列B) differenceメソッド array_a = [1, 2, 3, 4, 5] …

Rubyメソッド cycleメソッド

cycleメソッドとは? ⇨配列の要素を繰り返しループさせるメソッド 使い方 numbers = [1,2,3,4,5] numbers.cycle {|num| p num } #出力結果1,2,3,4,5,1,2,3,4,5,1といったように無限に繰り返される。 引数に何回ループを回したいかの回数を指定できる。 numbe…

Ruby メソッド downto(), upto()

downtoメソッドとは self から min まで 1 ずつ減らしながら繰り返す 公式 self.downto(min){|num| p num} 例文 例 5.downto(1){|num| p num} 出力結果5,4,3,2,1 例 5.downto(3){|num| p num} 出力結果5,4,3 downtoの逆のことをするuptoメソッドもある upto…

Ruby takeメソッド

takeメソッドとは? ⇨配列の先頭から指定の要素数を取り出し新たな配列に格納するメソッド 例文 numbers = [1,2,3,4,5] numbers.take(3) #出力結果[1,2,3] 参考情報 docs.ruby-lang.org

Rubyメソッド all?

allメソッドとは? 配列の中の要素を1つずつ取り出し、ブロック内の条件で判定する. 要素が全てtrueの場合trueを返し、1つでもfalseの判定になると直ちにfalseを返却する 使い方 配列の中の要素が全て5以上であるかを調べたい numbers = [10,20,30,40,50 ] p…

Ruby 多重配列を複数条件でソートする

やりたかったこと 多重配列を複数条件でソート(配列内の要素を大きい順でソートする) numbers = [ [1,2,3], [1,3,4], [1,3,5] ] #出力結果 numbers = [ [1,3,5] [1,3,4], [1,2,3], ] このように配列内の要素が大きい順(1つ目の要素が同じなら2つ目の要素で大…

Ruby rotateメソッド

結論 配列の中の要素を右や左にずらしながら配列を再度作成する。 rotateメソッドの使用例 number = [1, 2, 3] number.rotate #出力結果 [2, 3, 1] まとめ rotateメソッドは配列の中の要素をずらしながらずらしながら配列を再度作成する 参考情報 docs.ruby-…

Ruby absメソッド

absメソッドとは ⇨絶対値を求めるメソッド。absolute(絶対的)という単語を短縮したものです 絶対値とは? ⇨0からの距離をあらわす値です 例えば10と-10の絶対値は? ⇨10になります. これは-10でも+10でも0からの距離は10になるからです。 absメソッドの挙動 …

Rubyメソッド sort_byメソッドとsliceメソッド

前書き 文字列に含まれる数字の小さい順に並び替える処理を実装するのに時間がかかったので記事に残します. 変更前 ["mario12","wario1","yosii165","peach2"] ↓このように数字の小さい順番に並び替えたい ["wario1","peach2","mario12","yosii165"] 結論 so…

Ruby maxメソッドの引数にブロックを渡した時の挙動

前書き このような多重配列から要素数が最も多い配列かつ index番号が小さい配列を取得するにはどうするんだろうと思い、maxメソッドの少しユニークな使い方で実現できたので忘却録として記事に残そうと思いました。 multi_array = [ [1, 2], [4, 5, 6], [7 …

Ruby indexメソッド 概要と使い分け

概要 ⇨indexメソッドは配列の要素のインデックス番号を検索するメソッド 使い方 配列.index(引数) #配列の中から引数のindex番号を戻り値として返します。配列に引数の要素が見つからない場合nilを戻り値として返します。 numbers = [100,200,300] numbers.i…

Ruby block.callについて

結論 block.callはブロックを呼び出すためもの そもそもブロックとは? ⇨処理の塊. ブロックには2つの書き方がある. 1つ目のブロックの書き方( { } ) numbers = [1,2,3,4,5] numbers.each { |number| puts number} #出力結果1,2,3,4,5 #上記のコードの { |n…

Ruby zipメソッドの使い方

zipメソッドとは zipメソッドは2つの配列の要素を前から1つずつ取り出し新しい1つの配列を作成する。 使い方 fruits = ["apple", "mango", "banana"] prices = [100,200,300] fruits.zip(prices) 出力結果[["apple", 100], ["banana", 200], ["pineapple",…

Ruby ハッシュのバリューでソートする方法

前書き people = [ { height: 170, weight: 65, age: 25 }, { height: 180, weight: 75, age: 32 }, { height: 160, weight: 50, age: 29 }, { height: 160, weight: 68, age: 45 }, { height: 165, weight: 55, age: 23 }, { height: 172, weight: 70, age:…

Ruby gsubメソッド

概要 ⇨gsubメソッドはglobal substitution(置換)の略 文字列の中に含まれる文字を別の文字に置き換えるメソッド 使い方 2通りの使い方がある ①文字列.gsub(正規表現,置き換えたい文字) 例. "ruby-world".gsub(/ruby/,"hello") #出力結果 hello-world ②文字列…

Ruby chunk_whileメソッド

結論 ⇨配列内の要素をある条件に従ってグループ化するメソッド 使い方 配列.chunk_while{|a,b| ブロックの処理 } 配列内の要素を順番に取り出してブロックの処理がtrueの間はグループ化し続ける。ブロック内の処理がfalseになるとグループ化が止まる。aには…

Ruby each_with_indexメソッド

結論 ⇨配列の要素とインデックス番号を取得するメソッド 使い方 配列.each_with_index |a,b| do #処理 end a = 配列の要素. b = index番号 例文 langs = ["ruby", "php", "javascript", "python"] langs.each_with_index do |lang,index| puts "#{index}番目…

Ruby 配列で使えるsliceメソッド

結論 ⇨配列の中から特定の要素を取得したり特定の範囲の要素を取得したりするメソッド。 使用例 要素1つを取得 配列.slice(配列のインデックス番号) languages = ["python","ruby","php","javascript"] languages.slice(0) #出力結果"python" 注意点:ここで…

Ruby &メソッド

&メソッドとは? ⇨2つの配列を比較し2つの配列の共通している要素の配列を作成する。 使い方 string1 = "ruby" string2 = "rails" # 文字列を配列に変換 array1 = string1.chars array2 = string2.chars # 共通の文字を見つける common_characters = array…

Ruby swapcaseメソッド

概要 ⇨大文字を小文字に変換し、小文字を大文字に変換するメソッド 使い方 def upcase_downcase(input) input.swapcase end puts upcase_downcase("Hello World") puts upcase_downcase("aaaa") puts upcase_downcase("AAA") 出力結果 hELLO wORLD AAAA aaaa

Ruby ハッシュで使うメソッド3選

目次 keysメソッド has_key?メソッド valuesメソッド keysメソッド ⇨引数にハッシュのバリューを渡すとバリューに該当するキーを返す 例. hash = {:key1=>"val1", :key2=>"val2"} hash.key("val1"). #出力結果:key1 has_key?メソッド ⇨引数にキーを渡すとハ…

Ruby each_consメソッド

each_cons(引数)メソッドとは? ⇨要素を重複ありで 引数個要素ずつに区切り、ブロックに渡して繰り返します. consとはconsecutiveという「連続した」という形容詞の省略形です。 使い方の例 # 配列の定義 array = [1, 2, 3, 4, 5] # each_consメソッドの使用…

Ruby <=>メソッドとは?

<=>メソッドとは? ⇨2つの値を比較し、その大小関係を示す整数値を返します。 具体例 1 <=> 5 #出力結果-1 1 <=> 1 #出力結果0 10 <=> 1 #出力結果1 解説 左辺の値が右辺の値より小さい場合は -1 を返す 左辺の値が右辺の値と等しい場合は 0 を返す 左辺の値…

reduceメソッド

結論 配列の全ての要素を足したり引いたり、計算するメソッド 2つのreduceメソッドの使い方 引数ありパターン. a = [1,2] a.reduce(100){|b,c| b + c} #出力結果103 # 処理の流れ # 1. reduceメソッドの初期値(引数100)がbに代入される b = 100 # 2. 配列a…