各位小伙伴在阅读JDK8的代码时,是否遇到过这种情况:
ArrayList构造器中传递的值为50
public static void main(String[] args) {
ArrayList<String> strings = new ArrayList<>(50);
}
但在debug过程中,显示的是1
各位小伙伴在阅读JDK8的代码时,是否遇到过这种情况:
ArrayList构造器中传递的值为50
public static void main(String[] args) {
ArrayList<String> strings = new ArrayList<>(50);
}
但在debug过程中,显示的是1
怎么可能呢。一直是50呀。你是不是在构造方法上打断点了?因为启动类的时候要使用到arrayList这个类,所以他是1,你先再main方法,打一个断点,运行到断点之后,在构造方法中在打一个断点,这个时候才是走到你的代码调用的构造器。
运行到这个断点之后在,构造方法上打一个断点