【问题标题】:Ruby : using self.replace in object to an other object [closed]Ruby:在对象中使用 self.replace 到另一个对象 [关闭]
【发布时间】:2014-10-19 14:03:48
【问题描述】:

我想在 String 中编写一个方法来更改其他类中的当前 String,例如

class String
  def removethis!
    self.replace(nil) if self == "this"
    return self
  end
end

但效果不好:

TypeError: 没有将 nil 隐式转换为 String

这是一种方法吗?

【问题讨论】:

  • 为什么需要这个?这是一个经典的 XY 问题,如果我见过的话。
  • 我无法解析你的句子。

标签: ruby string replace typeerror null


【解决方案1】:

您不能将String 更改为NilClass。事实上,更一般地说,您不能更改对象的类。您可以将包含String 的变量的内容改为NilClass,但这不会改变String 本身,也不能将其作为String 上的方法。

【讨论】:

  • 这是我所期望的,但我没有在任何地方阅读。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-20
  • 2017-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多