将Swapcase类添加到字符串

时间:2016-07-27 03:09:13

标签: ruby string class methods

尝试为String类创建一个返回字符串swapcased的方法。我写了两种不同的方法

class String
  def to_alternating_case
    self.swapcase
  end
end

以上代码适用于输入的所有字符串。但是,如果输入以下代码:

class String
  def to_alternating_case
    self.swapcase!
  end
end

然后包含所有数字的字符串将返回nil。有人可以解释为什么当涉及仅包含数字的字符串时,这些行为会有所不同吗?

1 个答案:

答案 0 :(得分:1)

差异全在手册中。

String#swapcase!

  

等同于String#swapcase,但会修改接收器,如果没有进行任何更改,则返回strnil 。注意:大小写转换仅在ASCII区域有效。