Ruby 既然可以这样,为啥不能那样?

sevk · 2013年12月22日 · 最后由 piecehealth 回复于 2013年12月22日 · 2776 次阅读

:"c c" => 3 可以

为啥 "d d": 4 就不行了呢?哈哈

难道不是少了个 :

#1 楼 @bhuztez "c c": 4 也不行的

Key 是字符串的时候,不能用 x: y 的方式,必须用 "x" => y

#3 楼 @kgen 正则的时候呢, { /xxx/ : 4 , 3 : 3 } 也不行的吧 .

其实从编译器\解释器的角度来说,这个可以行~~

#4 楼 @sevk x: y 的含义是 :x => y,也就是说,前面必须是 Symbol 才可以。 其实这个语法挺操蛋的。不少人依然喜欢 :x => y 的老式写法。

:"xxx"相当于"xxx".to_sym,就像&:+相当于:+.to_proc

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