62,628
社区成员
发帖
与我相关
我的任务
分享
public static int getArrayListAllocateSize(ArrayList<?> list) {
Class<?> clazz = list.getClass();
int size = 0;
try {
Field field = clazz.getDeclaredField("elementData");
field.setAccessible(true);
Object[] elementData = (Object[]) field.get(list);
size = elementData.length;
} catch (Exception e) {}
return size;
}
[/quote]多谢大神,以后学到了再回头来看,目前还看不懂反射的内容
public static int getArrayListAllocateSize(ArrayList<?> list) {
Class<?> clazz = list.getClass();
int size = 0;
try {
Field field = clazz.getDeclaredField("elementData");
field.setAccessible(true);
Object[] elementData = (Object[]) field.get(list);
size = elementData.length;
} catch (Exception e) {}
return size;
}