Rubyの特徴であるオープンクラスの勉強のため、Stringクラスに絵文字変換メソッドを追加してみます。
例えば、"カレー".to_emojiを実行すると🍛がreturnされるイメージです。
実装
以下のように簡単に実装できました。
class String def to_emoji case self when "カレー" "🍛" when "ラーメン" "🍜" when "寿司" "🍣" else self end end end
Stringインスタンス自身を参照するためにはselfが使えます。
実行結果
# ※ class定義に続けて実行 puts "カレー".to_emoji # 🍛 puts "ラーメン".to_emoji # 🍜 puts "寿司".to_emoji # 🍣 puts "牛丼".to_emoji # 牛丼 ※ 対応する絵文字が定義されていないため、「牛丼」がそのまま返される puts "curry".upcase # CURRY ※ 既存のRubyのStringクラスの挙動が破壊されていないことの確認