0

タスク: Ruby では、String クラスを再度開き、upcase メソッドを呼び出す新しい機能 my_new_method を追加する必要があります。

"abc".my_new_method

戻り値

"ABC"

このコードを試してみましたが、テストで引数の数が間違っていると言われました (1 に対して 0)

# Re-open String class
class String
  # Add the my_new_method method.
  def my_new_method(value)
    value.upcase
  end
end

テスト:

Test.expect "abc".my_new_method == "ABC"

引数(値)を入れなくてもいいのはわかっているのですが、前に書いた文字列の取り方がわかりません。

私を助けてみてください。前もって感謝します!

4

1 に答える 1

2

コア クラスを拡張することは、特にコア メソッドを書き直す場合は注意して行う限り問題ありません。

インスタンスメソッド内にいるときはいつでも、self常にインスタンスを参照することを忘れないでください:

def my_special_upcase
  self.upcase + '!'
end

そのselfため、問題の文字列を参照します。

于 2016-03-26T00:23:38.463 に答える