如何检查数组中是否有不为 nil 的数据,然后返回该数据的索引? 示例:
myary = [nil, nil, 300, nil, nil] # <= index 2 is 300
现在有获取值2的方法吗?正如我们所知,索引 2 是 300 而不是零。 我需要获取索引而不是值。而且可能只有一个元素不是零,也许数组可能是这样的
myotherary = [nil, nil, 300, 400, nil] # <= index 2,3 = 300,400
现在为此我需要获得 2 和 3 值,这可行吗? 好的,非常感谢,感谢所有的回答。
P.S : 请不要发火,如果你不想帮忙就走吧,我花了一些时间来解决这个问题,但没有成功。我不会在这里问我是否可以自己解决它。我有足够多的人不帮忙,而是问“你试过什么方法?”或者写一些实际上无济于事但令人讨厌的东西。
最佳答案
您可以使用 map.with_index
:
myary.map.with_index { |v, i| i if v }.compact
# => [2]
myotherary.map.with_index { |v, i| i if v }.compact
# => [2, 3]
关于Ruby 检查数组,返回索引,哪些数据存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24915182/