Ruby nil概念详解

Ruby语言在实际应用中可以帮助我轻松的解决许多问题。在这里我们将会为大家详细解读有关Ruby nil的一些概念,希望能对大家的学习有些帮助。

我们常常处理这样的代码:

name=person?person.name:nil

取某个对象的一个属性,先判断对象是否为nil,不是Ruby nil就返回对象属性,否则返回nil。这样的代码写多了比较恶心,是否有比较有趣的方式来减少代码?作者给出了一段代码:

module ObjectExtension  


def nil_or  


return self unless self.nil?  



o = Object.new  




class << o 



def method_missing(sym,
 *args); nil; end  


end  


o  


end  


end  


class Object  


include ObjectExtension  


end 

相关推荐