Java ArrayList
Java ArrayList 类是一个可变大小的数组,位于 java.util 包中。
创建 ArrayList
- import java.util.ArrayList;
- ArrayList<String> cars = new ArrayList<String>(); // 创建一个 ArrayList 对象
复制代码 添加元素
- cars.add("Volvo");
- cars.add("BMW");
- cars.add("Ford");
- cars.add("Mazda");
复制代码 访问元素
修改元素
- cars.set(0, "Opel"); // 修改第一个元素
复制代码 删除元素
- cars.remove(0); // 删除第一个元素
- cars.clear(); // 删除所有元素
复制代码 ArrayList 大小
- cars.size(); // 获取 ArrayList 大小
复制代码 循环遍历 ArrayList
for 循环:- for (int i = 0; i < cars.size(); i++) {
- System.out.println(cars.get(i));
- }
复制代码 for-each 循环:- for (String car : cars) {
- System.out.println(car);
- }
复制代码 利用其他类型
- ArrayList<Integer> myNumbers = new ArrayList<Integer>();
- myNumbers.add(10);
- myNumbers.add(15);
- myNumbers.add(20);
- myNumbers.add(25);
复制代码 对 ArrayList 进行排序
- import java.util.Collections;
- Collections.sort(cars); // 对字符串的 ArrayList 进行排序
- Collections.sort(myNumbers); // 对整数的 ArrayList 进行排序
复制代码 ArrayList 是 Java 中常用的数据布局,它可以存储各种类型的数据,并且可以根据需要调整大小。
ArrayList 的上风:
- 可变大小
- 可以存储各种类型的数据
- 提供多种方法来访问、修改和删除元素
- 可以利用 Collections 类进行排序
ArrayList 的劣势:
建议:
- 当需要存储可变大小的数据集合时,利用 ArrayList。
- 当需要快速访问数据时,利用数组。
- 当需要存储大量数据时,思量利用其他数据布局,例如 HashMap。
Java LinkedList
LinkedList 类与 ArrayList 类相似,但它们之间也有一些重要的区别。
创建 LinkedList- // 导入 LinkedList 类
- import java.util.LinkedList;
- public class Main {
- public static void main(String[] args) {
- LinkedList<String> cars = new LinkedList<>();
- cars.add("Volvo");
- cars.add("BMW");
- cars.add("Ford");
- cars.add("Mazda");
- System.out.println(cars);
- }
- }
复制代码 ArrayList 与 LinkedList
雷同点:
- 它们都实现了 List 接口,因此它们具有雷同的方法。
- 它们都可用于存储各种类型的数据。
- 它们都允许您添加、删除和修改元素。
差别点:
- ArrayList 利用数组存储数据,而 LinkedList 利用链表存储数据。
- ArrayList 通常更快,因为它可以直接访问元素。
- LinkedList 更灵活,因为它可以更轻松地插入和删除元素。
何时利用:
- 如果您需要快速访问列表中的随机元素,请利用 ArrayList。
- 如果您需要常常插入和删除元素,请利用 LinkedList。
LinkedList 方法
LinkedList 提供了一些 ArrayList 没有的方法,这些方法可以更有效地执行某些操作:
方法描述addFirst()将元素添加到列表的开头。addLast()在列表的末端添加元素。removeFirst()从列表的开头删除元素。removeLast()从列表的末端删除元素。getFirst()获取列表开头的元素。getLast()获取列表末端的元素。示例
- // 添加元素到列表的开头
- cars.addFirst("Toyota");
- // 添加元素到列表的末尾
- cars.addLast("Mercedes");
- // 删除列表开头的元素
- cars.removeFirst();
- // 删除列表末尾的元素
- cars.removeLast();
- // 获取列表开头的元素
- String firstCar = cars.getFirst();
- // 获取列表末尾的元素
- String lastCar = cars.getLast();
复制代码 LinkedList 是一种灵活的数据布局,可以有效地执行某些操作。如果您需要常常插入和删除元素,LinkedList 是一个不错的选择。
末了
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜刮:Let us Coding,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |