被 jvm 编译器蠢哭了
資深大佬 : yukiloh 0
private void myTest(boolean isNeeded) { //业务需求:遍历一个 list 的过程中,如果 isNeeded 为 true,则为 neededList 插入数据 // ↓为编译器错误, // ArrayList<Integer> neededList = null; // if (isNeeded) neededList = new ArrayList<>(); // ↓通过检查 ArrayList<Integer> neededList = new ArrayList<>(); ArrayList<String> list = new ArrayList<>(); //...处理其他业务 list.forEach(element -> { //...处理其他业务 if (isNeeded) neededList.add(1); }); }
为啥他就感知不到 false 的情况不会执行呢…
大佬有話說 (14)