唐曌 2021-04-24 17:34 采纳率: 90%
浏览 59
已结题

集合容量和数组下标问题?为什么容量和下标不统一

当创建数组:ArrayList<String > list=new ArrayList();
往数组里面添加数据后,数组的长度为什么能够固定,
而和集合的容量无关:例如


public static void main(String[] args) {
        ArrayList<String > list=new ArrayList();
        System.out.println(list);

        list.add("a");
        list.add("b");
        System.out.println(list.get(3));


这个时候或出现异常:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 3, Size: 2


为什么这个时候的数组和集合容量不相通,数组的长度是2,不能用集合的容量来判断说

System.out.println(list.get(3));输出是null
  • 写回答

3条回答 默认 最新

  • 叫兽-郭老师 Java领域新星创作者 2021-04-25 10:20
    关注

    你是怎么理解的,索引位置都不存在,肯定报错了,怎么可能返回空或者0呢?

    不管是集合还是数组,你找不到下标肯定是包下标越界之类错误.

    还有如上面说的,数组的下标是从0开始的.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月2日