一开始就分配了10个空间。
那么现在,都 是null

解决方案 »

  1.   

    应该得不到。
    从代码级别上看
    this.elementData = new Object[initialCapacity];
    你要获取多少空间,就需要获取this.elementData.length
    ArrayList中不存在这样的方法。
      

  2.   

    System.out.println("size="+new ArrayList(10).size());console:size=0
      

  3.   

    是的,实际空间大小就是元素个数,new ArrayList(10)里面的10只是初始化时分配的大小,感觉有点用不着
      

  4.   

    好吧好吧,楼主非要看的话,只有一招了。import java.lang.reflect.*;
    import java.util.*;public class Test{
        public static void main(String[] args) throws Exception {
            ArrayList list = new ArrayList();
    Field f = ArrayList.class.getDeclaredField("elementData");
    f.setAccessible(true);
    Object[] elementData = (Object[])f.get(list);
    System.out.println(elementData.length);
        }
    }
      

  5.   

    楼主的意思其实就是类似于C里面的sizeof函数吧..
    貌似java里面没有类似的方法的..