"+ ="(加上等于)是什么意思?

F F*_*F F 31 ruby operators

我正在做一些红宝石练习,它说我需要回去用+=速记符号重写脚本.

本练习主要涉及学习新方法.问题是,+=当我尝试在网上查找时,我不知道是什么意思.

Jus*_*ner 60

+= 是一个速记运算符.

someVar += otherVar
Run Code Online (Sandbox Code Playgroud)

是相同的

someVar = someVar + otherVar
Run Code Online (Sandbox Code Playgroud)

  • 而`someVar = someVar + otherVar`与`someVar = someVar.+(otherVar)`相同.随意编写自己的类并在其上实现`+`,你也可以拥有`+ =`魔法! (5认同)

小智 15

使用以下形式的二元运算符的表达式:

x = x op y
Run Code Online (Sandbox Code Playgroud)

可以写成:

x op= y
Run Code Online (Sandbox Code Playgroud)

例如:

x += y   # x = x + y
x /= y   # x = x / y
x ||= y  # x = x || y (but see disclaimer)
Run Code Online (Sandbox Code Playgroud)

但是,请注意,||=并且&&=可以略微行为......不同(与哈希索引器一起使用时最明显).尽管如此,还是有很多关于这种古怪的问题.

快乐的编码.


chz*_*gla 2

不是红宝石专家,但我认为它要么附加到现有字符串,要么增加数字变量?