2
配列に数字のセットがある場合、正のものが負で負のものが正の値になるように、どのように逆転させることができますか?Rubyで値を逆にする方法
私は以下を試しましたが、うまくいかないようです。
def invert(list)
list.each {|x| x * (-1)}
end
配列に数字のセットがある場合、正のものが負で負のものが正の値になるように、どのように逆転させることができますか?Rubyで値を逆にする方法
私は以下を試しましたが、うまくいかないようです。
def invert(list)
list.each {|x| x * (-1)}
end
だから、簡単な
[1, 5, 7, -3, -47, 0].map { |i| -i }
=> [-1, -5, -7, 3, 47, 0]
でも短いです。
[1, 5, 7, -3, -47, 0].map(&:[email protected])
=> [-1, -5, -7, 3, 47, 0]
それは単項マイナスメソッド
リスト自体を修正するmap!
を使用して、新しいリストを返しますmap
を使用してい
list = [1, 2, 3]
new_list = list.map {|i| -i }
# list still be [1, 2, 3]
# new list = [-1, -2, -3]
list.map! {|i| -i }
# list changed to [-1, -2, -3]
実際に各値の反対が、結果を計算しないあなたのコード表示されず、別の配列に保存されません。結果の値は 'list.each {| x | puts x *(-1)} ' –
'を 'map'に変更してください。 –