ArrayList:
add方法:arraycopy將當(dāng)前位置后面的數(shù)據(jù),向后移一個位置,再將新添加元素,添加到指定位置
remove方法:arraycopy將當(dāng)前位置后面的數(shù)據(jù),向前移一個位置,設(shè)置最后一個位置為null
set方法:AbstractList中的方法,get當(dāng)前位置,替換當(dāng)前位置的值
get方法:查詢當(dāng)前位置的值
ArrayList擴容:原來的大小不夠,自動擴容,擴容之后size為size=size+2*size
ArrayList繼承Iterator、List、Collection,遍歷ArrayList刪除元素,要用Iterator的remove,實現(xiàn)順序刪除,for循環(huán)會有數(shù)組size不正確問題
LinkedList:Linkedlist是雙鏈表結(jié)構(gòu)的,雙鏈表結(jié)構(gòu)為previous->數(shù)據(jù)->next,單鏈表結(jié)構(gòu)為數(shù)據(jù)->next
add和remove方法:需要修改previous和next對象,重新調(diào)整指向,注意add時的調(diào)整順序