Ruby ruby 的三元操作符

alex · March 06, 2012 · Last by BBooB replied at December 12, 2017 · 18618 hits

看 ruby on rails tutorial 时有个地方说三元运算符是 var = boolean? ? foo : bar(http://ruby.railstutorial.org/chapters/user-microposts?version=3.2#sidebar:ternary_operator)可我记得只有一个问号啊,查了下书也是,俩问号在 irb 和 rails c 下也是语法错误。

谁告诉你是两个问号。。是一个问号 估计 boolean?整个是个方法名

Irb 里试试这个

true ? "yay" :"boo"

#1 楼 @ywencn 囧,抱歉卖萌了,俩问号中间有一空格

var = boolean? ? foo : bar 这个判断格式上没有问题,不过 boolean?是有问题的,应该是什么变量.boolean?,这个时候会返回 true 或者 false,后面的?,在做三元运算。比如:c = 11 a = c.present? ? "1" : "2", 这时 a = 1

You need to Sign in before reply, if you don't have an account, please Sign up first.