我有一个无法修复的奇怪错误。谁能帮我?谢谢你。
ArrayList<Choices> newSecurityChoicesList =
securityChoicesController.getChoicesList();
System.out.println("first-" + newSecurityChoicesList.size());
securityQuestion.getChoices().clear();
System.out.println("second-" + newSecurityChoicesList.size());
一些解释:
我创造了这个newSecurityChoicesList
ArrayList
。它是方法中的局部变量。第一个系统打印出来的结果是 2。
为什么第二个打印出来的结果是 0?
当然是因为securityQuestion.getChoices().clear();
方法。但是为什么方法可以改变方法中的局部变量呢?此方法仅在应用程序的最后调用一次。
提前致谢。