????????е?Java?б?????????????????
???????????? ???????[ 2012/5/2 11:14:55 ] ????????
SDK????????????java.util.List?????????????????????????????Vector??ArrayList??LinkedList???й???ЩList???????????????????????????????????????У??????????LinkedList??Vector/ArrayList???????????
?????????????Щ??????????????????????????????????????????????????????????????????????????Щ?????????
???Vector??ArrayList?????
????Vector??ArrayList?????????????Object[]???飬???Object[]??????????????????????????????????????????????????????????????
public Object get(int index)
{ // ??????index?????...??????????????? return
elementData[index]; }
???????????????Vector/ArrayList????????????????????????????????;?????????????????????????????????÷???????????μ??????浽????????е?????????λ????????μ????λ????????????? public boolean add(Object o)
{ ensureCapacity(size + 1); // ?????? elementData[size++] = o; return true;
// List.add(Object) ?????? }
???????????????????????λ??????????????β??????????????????????????????????????????????λ???????????и???? public void add(int index?? Object element) {
// ??????index?????...???????????????
ensureCapacity(size+1);
System.arraycopy(elementData?? index?? elementData?? index + 1??
size - index);
elementData[index] = element;
size++;
}
????????ù??????????????????????Vector/ArrayList????????????????????????滻?????Object[]???飬?????е?????????????μ????顣????SDK?汾???????μ??????????????50%???????????????????????????? public void ensureCapacity(int minCapacity) {
int oldCapacity = elementData.length;
if (minCapacity > oldCapacity) {
Object oldData[] = elementData;
int newCapacity = Math.max(oldCapacity * 2?? minCapacity);
elementData = new Object[newCapacity];
System.arraycopy(oldData?? 0?? elementData?? 0?? size);
}
}
??Vector???ArrayList????????????????????????????????????л??????????????ArrayList??????????????е???????????Vector????????????????????????????????????Vector????????????ArrayList??????????ArrayList???Vector??????????Щ?μ?JVM??????????????????????????????????????????ЩJVM?????????????????????С??????Щ???????????????????????
?????????????????????????Vector??ArrayList??????????????????????????????Χ???????????????????????????????????????????????????б???β???????????б???β??????????????????????????????????????????????????鸴?????????????????????????????θ??????????????????????[size-index]??????????????/??????????к?????λ?????????????????????????????????????????棨????0??????????????????????????????????????????á???????????????????鸴????????????????????β???????????????????????????
????LinkedList?????
????LinkedList?????????????????б????????????????????????????????н????????????? public Object get(intindex) {
// ??????index?????...???????????????
Entry e = header; // ??????
// ?????????????????????????????????
// ??????
if (index < size/2) {
for (int i = 0; i <= index; i++)
e = e.next;
} else {
for (int i = size; i > index; i--)
e = e.previous;
}
return e;
}
?????????б?????????????????????????y??????????????? public void add(int index?? Object element) {
// ??????index?????...???????????????
Entry e = header; // starting node
// ?????????????????????????????????
// ??????
if (index < size/2) {
for (int i = 0; i <= index; i++)
e = e.next;
} else {
for (int i = size; i > index; i--)
e = e.previous;
}
Entry newEntry = new Entry(element?? e?? e.previous);
newEntry.previous.next = newEntry;
newEntry.next.previous = newEntry;
size++;
}
?????????LinkedList??????????
??????????Java SDK?????????????LinkedList????????????????????????Collections.synchronizedList(List)????????????????????????????????????????????????????????????????????????????????????????????????????????????ζ???????????????????????????????????δ?????????????????????????????????????????????????????????????????????????????????????????????????????????1???????????????????????????????
????????ζ?????Vector????????????????LinkedList?????????????????????????Vector????????????????????κζ????????á?????????????????????LinkedList??????????LinkedList???ü?????????????????????????????????????????????????????????????????????Ч?????List??Map???и?Ч????????????????Vector??Hashtable????????????????????Ч??????????????????????????????????????????????
???????????????????????????LinkedList?????????????????????????????????????????????????????????????п???????????????????????????????????????????????????????????????棬LinkedList????????????????????????????????????-???????????????????????-??????????β???????
??????
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11