ruby – 迭代数组的每个元素,第一个元素除外
发布时间:2020-12-17 02:48:14 所属栏目:百科 来源:网络整理
导读:编写此代码的惯用 Ruby方式是什么? 给定一个数组,我想遍历该数组的每个元素,但跳过第一个.我想在不分配新数组的情况下这样做. 这是我提出的两种方式,但都不是特别优雅. 这有效,但似乎太冗长: arr.each_with_index do |elem,i| next if i.zero? # skip the
编写此代码的惯用
Ruby方式是什么?
给定一个数组,我想遍历该数组的每个元素,但跳过第一个.我想在不分配新数组的情况下这样做. 这是我提出的两种方式,但都不是特别优雅. 这有效,但似乎太冗长: arr.each_with_index do |elem,i| next if i.zero? # skip the first ... end 这可以工作,但分配一个新的数组: arr[1..-1].each { ... } 编辑/澄清:我想避免分配第二个数组.最初我说我想避免“复制”阵列,这令人困惑. 解决方法
使用内部枚举器肯定更直观,你可以这样做得相当优雅:
class Array def each_after(n) each_with_index do |elem,i| yield elem if i >= n end end end 现在: arr.each_after(1) do |elem| ... end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c# – 从.NET Windows服务启动进程
- C#匿名类型
- xml – 元素必须没有字符或元素信息项[children],因为类型的
- JSF 2.0 AJAX:jsf.ajax.request调用方法不仅重新渲染页面区
- ruby-on-rails – 将String转换为ActiveRecord查询
- 数组 – 在Swift中如何根据类别过滤符合协议的对象数组?
- c# – WPF:如何以编程方式从ScrollViewer中提取Scrollbar?
- ruby-on-rails – 使用Heroku create命令时Heroku应用程序错
- Flash AS3)用图片绘制线段,lineBitmapStyle
- kendo-ui – 如何使用重写数据源参数将其他参数传递给kendo