在Ruby中,左移意味着什么?
谁能解释一下ruby中的“左移”语法是什么意思 例如,我有这个在Ruby中,左移意味着什么?,ruby,Ruby,谁能解释一下ruby中的“左移”语法是什么意思 例如,我有这个 File.open( folder, 'w' ){ |f| f << datavalue } File.open(文件夹,'w'){f | fFile.open(文件夹,'w'){f | fsome_text=“world!” 你好=“你好,” 您好然后答案是:这要看情况。我不想吹毛求疵,但Ruby几乎没有任何真正的运算符。在Ruby中,大多数“运算符”实际上是方法,这可能与Ruby中的一切都是对象一样 请考虑这个代
File.open( folder, 'w' ){ |f| f << datavalue }
File.open(文件夹,'w'){f | fFile.open(文件夹,'w'){f | fsome_text=“world!”
你好=“你好,”
您好然后答案是:这要看情况。我不想吹毛求疵,但Ruby几乎没有任何真正的运算符。在Ruby中,大多数“运算符”实际上是方法,这可能与Ruby中的一切都是对象一样
请考虑这个代码
o.x = a + b
o.x=(a.+(b))
a = b << c
这里没有运算符,因为实际上这只是编写此代码的另一种方法
o.x = a + b
o.x=(a.+(b))
a = b << c
而x=
是setter方法的名称,+
也是对象a
的方法名称。在Ruby中,其他语言中的运算符字符可以用作方法名称的一部分(想想Ruby方法名称中常用的?
)
所以这个代码
o.x = a + b
o.x=(a.+(b))
a = b << c
<> P>但是,在<代码> FixNuM<代码> <代码>我认为你应该考虑阅读一些Ruby语言的介绍。对于初学者来说,有很多Ruby教程。它会帮助你理解你所得到的答案。
class MyClass
# If you prefer, can also be written as
# def << x
def << ( x )
# do something with x
end
end
o = MyClass.new()
x = o << a