集合和數(shù)組的區(qū)別
數(shù)組:長度固定的删顶;可以儲存基本數(shù)據(jù)類型捐凭;對象必須是相同類型的數(shù)組。
集合:長度是可變的鸽捻;只能用于儲存對象的引用呼巴;對象可以是不同類型的數(shù)據(jù)。
Arraylist
Arraylist支持可隨需要而增長的動態(tài)數(shù)組御蒲。一般情況查詢速度塊衣赶,增刪速度慢。
package list;
import java.util.ArrayList;
/**
* @qvthor liuwenzheng
* @date 2021/5/6 17:12
*/
public class ArrayListDemo01 {
public static void main(String[] args) {
String[] array01 = new String[10];
array01[0] = "zhangsan";
array01[1] = "lisi";
array01[2] = "wangwu";
ArrayList<Object>list01 = new ArrayList<>(); //數(shù)組列表
list01.add("zhangsan");
list01.add("lisi");
list01.add("wangwu");
System.out.println(list01);
// 2 刪除
list01.remove(1);
System.out.println(list01);
// 3 修改
list01.set(1,"xaiowu");
System.out.println(list01);
// 4 查詢
for (Object l : list01){
System.out.println(l + "\t");
}
// 5 求長度
System.out.println(list01.size());
// 6 清空
list01.clear();
System.out.println(list01.size());
System.out.println(list01.isEmpty());
// 7 addAll()
ArrayList<Object>list02 = new ArrayList<>();
list02.add(111);
list02.add(222);
list01.addAll(1,list02);
System.out.println(list01);
}
}
Linked
LinkedList是Link的雙向數(shù)據(jù)結構删咱,也可以當作堆棧屑埋。隊列,雙端隊列痰滋。鏈表是一種在物理上非連續(xù)摘能、非順序的數(shù)據(jù)結構续崖,有若干個點所組成。
package list;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
/**
* @qvthor liuwenzheng
* @date 2021/5/6 18:16
*/
public class LinkedListDemo02 {
public static void main(String[] args) {
LinkedList<Object>list01 = new LinkedList<>(); // 鏈表方式實現(xiàn)
list01.add("zhangsan");
list01.add("lisi");
list01.add("wangwu");
System.out.println(list01);
// 2 刪除
list01.remove(1);
System.out.println(list01);
// 3 修改
list01.set(1,"xaiowu");
System.out.println(list01);
// 4 查詢
for (Object l : list01){
System.out.println(l + "\t");
}
// 5 求長度
System.out.println(list01.size());
// 6 清空
list01.clear();
System.out.println(list01.size());
System.out.println(list01.isEmpty());
// 7 addAll()
ArrayList<Object>list02 = new ArrayList<>();
list02.add(111);
list02.add(222);
list01.addAll(1,list02);
System.out.println(list01);
//將數(shù)據(jù)添加到末尾
list01.addLast(111);
}
}