UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【Vavr】反復処理でインデックスを使いたい

Vavrを利用して次のようなリストを定義した時、要素を繰り返し処理し同時に要素番号(index)にアクセスしたい

List<Integer> integers = List.of(1, 2, 3);

JavaScriptだと以下のようにしてindexがとれるがVavrの場合はどうやるのか

integers.forEach((item, index) => { console.log("要素 = " + item + " index = " + index); });

zipWithIndexを使う

zipWithIndexは要素とインデックスのタプルで構成される新しいコレクションを返してくれる https://www.javadoc.io/doc/io.vavr/vavr/0.9.0/io/vavr/collection/List.html#zipWithIndex--

List<Integer> integers = List.of(1, 2, 3);

integers.zipWithIndex().forEach(t ->
    System.out.println("要素 = " + t._1 + " index = " + t._2)
);