JavaのListの繰り返しで一番最後の要素だけ処理を変えたい

mrktanaka 467views 更新:2016年7月4日

Javaのリストのループは拡張for文が書きやすくて便利ですが、拡張for文ではインデックスを簡単に得られないので、繰り返しの一番最後の要素だけあれこれしたい…といった泥臭い書き方に対応できません。

大人しく、一時変数を使って最後だけif文で分けてもいいのですが、Javaではイテレータを使ったループもありますね。それで一番最後の要素だけ処理を変える書き方は以下のようになります。

  • イテレータを使った書き方
        for (Iterator<Integer> iterator = arr.iterator(); iterator.hasNext();) {
          Integer element = iterator.next();
          System.out.println(element);
          if (!iterator.hasNext()) {
            System.out.println(Integer.toString(element) + " end!");
          }
        }

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません