Ruby 配列内の値を総和を求める
Rubyで、joinを使って、配列内の値を総和を求めるサンプルコードを記述してます。rubyのバージョンは2.7.2を使用してます。
環境
- OS windows10 pro 64bit
- ruby 2.7.2p137
join使い方
joinを使用すると、配列内の値を総和を求めることが可能です。
※パフォーマンスは後述のsumの方がいいので、sumを使うのがお勧めです。
eval [配列].join("+")
以下は、配列内の値を総和を求めて表示するサンプルコードとなります。
arr=[1,2,3]
# evalはStringオブジェクトをコードとして評価
p eval arr.join("+")
# 6
# evalなしの実行結果
p arr.join("+")
# "1+2+3"
# 演算子を変えることも可能です
p eval arr.join("-")
# -4
文字列の場合は、join(“”)を使用して総和では全て結合することができます。
# 文字列の場合は以下で結合できます
arr=["A","B","C"]
p arr.join("")
# "ABC"
injectを使用しても、総和を求めることが可能です。
arr=[1, 2, 3]
p arr.inject(&:+)
# 6
二次元配列の場合も同様に、全てフラットな状態になった総和を求めることができます。
arr=[[1,2], [3,4]]
p eval arr.join("+")
# 10
sum
sumを使用することで、配列の総和を求めることも可能です。
パフォーマンスもsumの方が圧倒的にいいです。
arr = [1, 2, 3]
p arr.sum
# 6
文字列はエラーとなります。
arr = ["A","B","C"]
p arr.sum
# `+': String can't be coerced into Integer
二次元配列の場合もエラーとなります。
arr = [[1,2], [3,4]]
p arr.sum
# `+': Array can't be coerced into Integer
-
前の記事
C# List(リスト)の値をソートする 2020.12.20
-
次の記事
vscode コマンドプロンプトが立ち上がってしまう 2020.12.21
コメントを書く