ArrayList原理演示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList原理演示相关的知识,希望对你有一定的参考价值。

import java.util.Arrays;

public class MyList<T>{
public int size;//因为数组长度是可变的,所以定义一个变量
public Object[] data;//定义一个数组

//new的时候创建数组,所以在构造函数里面new数组
public MyList(){
data=new Object[10];
size=0;
}

//往数组里面添加数据,建一个add方法
public void add(T t){
if (size<data.length) {//当传入的数据少于10时,没有问题
data[size]=t;
}else {
int newLength=data.length*2;//设置一个数组的长度,方便赋予data不够长度的时候
Object[] newData=Arrays.copyOf(data, newLength);
data=newData;//把新的数组赋值于data
data[size]=t;//赋值
}
size++;
}

public T get(int index){
return (T)data[index];
}


}

以上是关于ArrayList原理演示的主要内容,如果未能解决你的问题,请参考以下文章

ArrayList实现原理分析

arraylist底层原理jdk11和1.8区别

ArrayList使用及原理

浅谈ArrayList的底层扩容的原理

秋招之路1:ArrayList的底层实现原理

ArrayList的实现原理