Understanding ArrayList Capacity vs. Size
Q: Why can't you initially access spaces allocated for an ArrayList if you specify an initial size?
A: The confusion arises from misunderstanding the difference between the size and capacity of an ArrayList.
The size of an ArrayList denotes the number of elements it contains, while the capacity represents the maximum number of elements it can hold before needing to allocate more memory. Setting an initial capacity optimizes performance by pre-allocating space for a certain number of elements, but it doesn't automatically populate the list with that many elements.
For example, when you create an ArrayList with an initial capacity of 10, the list is initially empty, and attempting to add an element at index 10 will result in an out of bounds exception.
To add elements to the ArrayList, you need to use the add method, specifying the index where the element should be inserted. If you want to fill the list with 10 elements, you can use a loop:
for (int i = 0; iBy using this technique, you can add 10 elements and then manipulate them at indices 0 to 9 without boundary issues.
Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.
Copyright© 2022 湘ICP备2022001581号-3