在Java语言中,你可以做instanceof
。有没有Ruby的等价物?
发布于 2010-08-06 22:38:47
这几乎完全一样。您可以使用Object
的instance_of?
方法:
"a".instance_of? String # => true
"a".instance_of? Object # => false
Ruby也有is_a?
和kind_of?
方法(这两个是别名,工作原理完全一样),它返回true
是一个超类匹配:
"a".is_a? String # => true
"a".is_a? Object # => true
发布于 2014-05-10 06:09:47
kind_of?
和is_a?
是同义词。它们是Ruby的等价物,相当于Java的instanceof
。
instance_of?
的不同之处在于,只有当对象是该类的实例而不是子类时,它才会返回true
。
发布于 2010-08-06 22:43:17
了解一下instance_of?
和kind_of?
方法。这是文档链接http://ruby-doc.org/core/classes/Object.html#M000372
https://stackoverflow.com/questions/3424782
复制相似问题