« [プログラミング] CodeIQ や paiza の問題とRuby | トップページ | [Ruby] rbenv の install コマンド »

2015年4月13日 (月)

[Java][Ruby] 配列の偶数番目の要素を抜き出す

配列の偶数番目の要素だけを抜き出すシンプルな書き方ってどんな書き方なんだろうか?

import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
import java.util.stream.IntStream;
public class Even {
    public static void main(String ... args) {
        List<String> ary = new ArrayList<String>(Arrays.asList("a","b","c","d","e"));
        IntStream.range(0, ary.size())
            .filter(e -> e % 2 == 1)
            .mapToObj(e -> ary.get(e))
            .forEach(e -> System.out.println(e));
    }
}

Ruby で書くと

ary = ["a", "b", "c", "d", "e"]
ary = 1.step(ary.size - 1, 2).map{|e|
  ary[e]
}
puts ary

Ruby だと、with_index を使う方法がネットで見つかった。

ary = ["a", "b", "c", "d", "e"]
ary = ary.select.with_index{|e, i|
  i % 2 == 1
}
puts ary

|

« [プログラミング] CodeIQ や paiza の問題とRuby | トップページ | [Ruby] rbenv の install コマンド »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [Java][Ruby] 配列の偶数番目の要素を抜き出す:

« [プログラミング] CodeIQ や paiza の問題とRuby | トップページ | [Ruby] rbenv の install コマンド »