Java ArrayList
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。
ArrayList 继承了 AbstractList ,并实现了 List 接口。
import java.util.ArrayList; // 引入 ArrayList 类
ArrayList<E> objectName =new ArrayList<>(); // 初始化
- E: 泛型数据类型,用于设置 objectName 的数据类型,只能为引用数据类型。
- 对象名称: 对象名。
ArrayList 是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。
import java.util.*;
public class Test01 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("王");//add添加元素
list.add("帅哥");
System.out.println(list);
System.out.println(list.get(0));//get()通过下标访问元素
list.set(0,"刘");//set()修改值,第一个参数是索引位置,第二个参数是要修改的值
System.out.println(list);
list.remove(0);//remove()通过索引删除元素
System.out.println(list);
System.out.println(list.size());//size()计算集合中的元素数量
for (String i:list){ //用for-each来迭代元素
System.out.println(i);
}
}
}
结果为:
[王, 帅哥]
王
[刘, 帅哥]
[帅哥]
1
帅哥
Java LinkedList
链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的地址。
链表可分为单向链表和双向链表。
一个单向链表包含两个值: 当前节点的值和一个指向下一个节点的链接。
一个双向链表有三个整数值: 数值、向后的节点链接、向前的节点链接。
Java LinkedList(链表) 类似于 ArrayList,是一种常用的数据容器。
import java.util.LinkedList; // 引入 LinkedList 类
LinkedList<E> list = new LinkedList<E>(); // 普通创建方法或者
LinkedList<E> list = new LinkedList(Collection<? extends E> c); // 使用集合创建链表
创建一个简单的链表
import java.util.*;
public class Test01 {
public static void main(String[] args) {
LinkedList<String> sites = new LinkedList<String>();
sites.add("12");//add添加元素
sites.add("34");
sites.add("56");
System.out.println(sites);
sites.addFirst("999"); // 使用 addFirst() 在头部添加元素
sites.addLast("666"); // 使用 addLast() 在尾部添加元素
System.out.println(sites);
sites.removeFirst(); // 使用 removeFirst() 移除头部元素
sites.removeLast(); // 使用 removeLast() 移除尾部元素
System.out.println(sites);
System.out.println(sites.getFirst()); // 使用 getFirst() 获取头部元素
System.out.println(sites.getLast()); // 使用 getLast() 获取尾部元素
}
}
结果为:
[12, 34, 56]
[999, 12, 34, 56, 666]
[12, 34, 56]
12
56