Ruby中如何筛选rating大于3的电影并提取指定字段存入新数组
实现代码
你可以组合使用Ruby数组的select过滤方法和map转换方法实现需求:
# 过滤+字段提取 filtered_movies = movies.select { |item| item['rating'] > 3 } .map { |item| { 'title' => item['title'], 'boxart' => item['boxart'] } }
代码说明
select方法负责筛选出所有rating数值大于3的电影条目map方法负责将筛选后的条目重新处理,仅保留title和boxart两个字段,生成符合要求的新数组
运行结果
执行后filtered_movies的输出和你预期的结果完全一致:
[ { "title"=>"Die Hard", "boxart"=>"http://cdn-0.nflximg.com/images/2891/DieHard.jpg" } ]
内容的提问来源于stack exchange,提问作者Kevin
相关产品推荐
相关产品推荐

