Modifying local variable from inside lambda

后端 未结 11 1249
失恋的感觉
失恋的感觉 2020-11-28 04:30

Modifying a local variable in forEach gives a compile error:

Normal

    int ordinal = 0;
    for (Example s : list) {
          


        
11条回答
  •  南笙
    南笙 (楼主)
    2020-11-28 04:55

    If you are on Java 10, you can use var for that:

    var ordinal = new Object() { int value; };
    list.forEach(s -> {
        s.setOrdinal(ordinal.value);
        ordinal.value++;
    });
    

提交回复
热议问题