Rubyの破壊的メソッド

Rubyには"破壊的メソッド"というものがある。
調べてみると、「オブジェクトそのものを書き換えてしまうもの」らしい。

例) 文字列の空白を除去

s = " もじれつ"
puts s # もじれつ

#通常のメソッド
s = " もじれつ"
s = s.strip
puts s #もじれつ

# 破壊的メソッド
s = " もじれつ"
s.strip!

puts s #もじれつ

破壊的メソッドの場合は「s = s.strip!」と表記しなくても、
そのままオブジェクトが書き換えられてしまう。
s.strip!だけでオブジェクトの中身が入れ替わってしまうので、
他の言語と比べると不思議な感覚がある。

このブログの人気の投稿

コピーした行の挿入が表示されない時はフィルタされていないかチェック

Excel で一部の図形だけ固定する