Bean型のリストから特定のフィールドを抜き出して、Integer型リストに変換する

package trial;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class Loop {

    public static void main(String[] args) {

        /******************************************
         * ループ処理いろいろ
         *  HogeBean型のリストから、Integer型のリストを作る
         *  HogeBean
         *  - private int id
         *  - private String password;
         *  - String name;
         ******************************************/

        List<Integer> idList;
        List<HogeBean> hogeList = new ArrayList<HogeBean>();

        int cnt = 0;
        while (cnt < 5) {
            HogeBean hogeBean = new HogeBean();
            hogeBean.setId(cnt);
            hogeList.add(hogeBean);
            cnt++;
        }

        /********************
         * Java5より前の場合
         ********************/
        // 普通のfor文
        idList = new ArrayList<Integer>();
        for (int i = 0; i < hogeList.size(); i++) {
            idList.add(hogeList.get(i).getId());
        }

        /********************
         * Java6 ~ Java7の場合
         ********************/
        // 拡張for文
        idList = new ArrayList<Integer>();
        for (HogeBean hogeBean : hogeList) {
            idList.add(hogeBean.getId());
        }

        /********************
         *    Java8の場合
         ********************/
        // Stream ラムダ式
        idList = hogeList.stream().map(hogeBean -> hogeBean.getId()).collect(Collectors.toList());

        // Stream コロコロ式
        idList = hogeList.stream().map(HogeBean::getId).collect(Collectors.toList());
    }
}