You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby中如何判断一个对象是否为数组?

Ruby判断变量是否为数组的实现方法

在Ruby里,要判断一个变量是否为数组类型,最常用的是is_a?(Array)方法,它会返回布尔值,直接用于if条件判断即可。

基础实现示例

value = [1, 2, 3] # 可替换为任意待判断变量

if value.is_a?(Array)
  # 变量是数组时执行的逻辑
  puts "这是一个数组"
else
  # 变量非数组时执行的逻辑
  puts "这不是一个数组"
end

其他等价写法

你也可以用kind_of?(Array),它和is_a?功能完全一致:

if value.kind_of?(Array)
  # 执行数组相关逻辑
end

另外,还可以用Array === value这种写法,效果相同:

if Array === value
  # 执行数组相关逻辑
end

注意点

  • 如果变量可能是nil,is_a?会直接返回false,无需额外做nil判断(除非你想单独处理nil场景)
  • 上述方法会把Array的子类实例也判定为数组,如果需要严格判断是否是Array本身的实例,可以用value.class == Array:
if value.class == Array
  # 仅当变量是Array类实例时执行
end

内容的提问来源于stack exchange,提问作者anyonymousgamer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 09:45:41