前書き
私はプログラミング初学者なのですが現役エンジニアの方にコードレビューしていただいたことを記事に残します。
結論
⇨同じ処理ならより可読性が高いメソッドを使おう。配列から要素を除外するメソッドはrejectメソッドより-(マイナス)メソッドを使用しよう.
そもそもrejectの構文
配列オブジェクト.reject{|引数|処理}
例偶数(odd)と奇数(even)を表示するプログラム
numbers = [1,2,3,4,5] odd = [2,4] even = numbers.reject{|number|odd.include?(number)} puts even ⇨[1,3,5]出力
⇨numbersという配列の要素を左から1つずつ取り出しnumberという引数に代入されoddに含まれる要素(2,4)と引数が同じだったら新しい配列(even)の中に代入され違う場合何もしないという処理
-(マイナス)メソッドの構文
配列A - 配列B
配列Aから配列Bを取り除く.
例偶数(odd)と奇数(even)を表示するプログラム
numbers = [1,2,3,4,5] odd = [2,4] even = numbers - odd puts even ⇨[1,3,5]出力
rejectメソッドよりコードが短く直感的に何をしてるのかわかりやすくなりました。
まとめ
- 同じ処理をしているなら可読性が高いコードが短い方を選ぶ