开发者社区> 问答> 正文

查找符合给定条件的元素的索引

给定一个数组,如何找到与给定条件匹配的元素的所有索引?

例如,如果我有:

arr = ['x', 'o', 'x', '.', '.', 'o', 'x'] 要找到项目所在的所有索引x,我可以这样做:

arr.each_with_index.map { |a, i| a == 'x' ? i : nil }.compact # => [0, 2, 6] 要么

(0..arr.size-1).select { |i| arr[i] == 'x' } # => [0, 2, 6] 有没有更好的方法来实现这一目标? 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 13:17:59 315 0
1 条回答
写回答
取消 提交回答
  • Ruby 1.9:

    arr = ['x', 'o', 'x', '.', '.', 'o', 'x'] p arr.each_index.select{|i| arr[i] == 'x'} # =>[0, 2, 6] 码

    2020-02-09 13:18:10
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载