Ruby ruby ,_=是什么意思?

yan32768 · 2015年03月16日 · 最后由 will7v 回复于 2015年04月21日 · 5397 次阅读

没见过这样的运算符啊?可是能用

运算符是啥?

,_=

还是

_=

是逗号,下划线,等号

_= 这是给赋值 但是`,=`还没见过哦

connection,_=server.accept

知道了,原来这里下划线是变量名称,是一个简单的赋值语句,不明白为什么这么写

#5 楼 @yan32768 就是不用第二个值呗。 多重赋值

某些语言或者检查器中,定义了不使用的变量会报警,于是出现了 _ 标明不使用该变量的语法。

其实 下划线也是个变量,ruby 是动态语言,为什么还要这样做呢

在 ruby 里,_ 不仅仅会用在#7 楼说的这样的场合 而且这个值表示最近使用过的最后一个值 比如:

> 2 + 3
=> 5
> _  + 5
=> 10

@rocLv 楼上这种是 console 里吧,是上次运行结果会存在 _ 中,程序里不可以这样

需要 登录 后方可回复, 如果你还没有账号请 注册新账号