为什么将全局变量kyzIdList的值赋值给局部变量list ,然后去改变局部变量的值,全局变量kyzIdList也跟着变了?
@RestController
@RequestMapping("homePage")
public class TestController implements ApplicationRunner {
private static final List<String> kyzIdList = new ArrayList<>();
@Override
public void run(ApplicationArguments args) throws Exception {
getKyzIdList();
}
@RequestMapping("electric")
public void electric(@RequestParam Map<String, Object> params) {
List<String> list = kyzIdList;
for (int i = 0; i < list .size(); i++) {
String s = list .get(i);
if (s.equals("1")) {
list .remove(i);
i--;
}
}
}
private final List<String> getKyzIdList () {
//ArrayList<String> list = new ArrayList<>();
kyzIdList.add("1");
kyzIdList.add("2");
kyzIdList.add("3");
kyzIdList.add("4");
kyzIdList.add("5");
//kyzIdList=list;
return kyzIdList;
}
}