【问题标题】:What does :/ mean in Ruby?:/ 在 Ruby 中是什么意思?
【发布时间】:2014-06-21 23:37:14
【问题描述】:

这里是一个非常基本的问题 - 我们被要求将以下内容翻译成新格式,所以

"hello".send(:reverse) 

变成

"hello".reverse

下面的:/是什么意思?

10.send(:/, 3)
=> 3

【问题讨论】:

  • 一般:-任何事物都意味着“符号”。在这种情况下,它读作“symbol-slash”。语法允许使用各种类型的术语,例如 :+:?,但一般而言,:x 等效于 "x".to_sym,用于各种 x 类型的术语。
  • 这意味着你很生气哈哈(请原谅我:D)
  • :-):-D:'-(:-o:-<:-s:->:~-(:-0:-e@9
  • @sawa 不错的符号... Lollz
  • 感谢您的帮助@tadman!

标签: ruby


【解决方案1】:

这是一个类似Fixnum#/的方法。 Object#send 方法将它的第一个参数作为方法名,可以是 symbolstring

所以你正在使用10.send(:/, 3)进行除法运算,它只不过是10/3(它是10./(3)的语法糖)。

【讨论】:

  • 通过比较,10.send(:divmod, 3) 等价于10.divmod(3),同样10.send(:/, 3) 等价于10./(3),即等价于10 / 3
  • 感谢您的帮助!这回答了我的问题!
猜你喜欢
  • 2016-08-17
  • 2011-10-14
  • 2011-04-18
  • 2010-09-18
  • 2011-08-18
  • 1970-01-01
  • 2016-09-17
  • 2021-11-10
  • 2011-01-11
相关资源
最近更新 更多