📅  最后修改于: 2023-12-03 14:42:21.915000             🧑  作者: Mango
Java 中的 ArrayList 和 HashSet 都是常用的集合类,它们都实现了 Java Collection 接口。然而,它们使用不同的底层数据结构,因此在使用时也有不同的特点和适用场景。
ArrayList 是基于数组实现的集合类,它可以动态增加或缩小数组大小,方便插入或删除元素。以下是 ArrayList 的特点:
以下是 ArrayList 的示例代码:
import java.util.ArrayList;
import java.util.List;
public class ArrayListDemo {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
// 添加元素
list.add("A");
list.add("B");
list.add("C");
// 遍历元素(按插入顺序)
for (String str : list) {
System.out.println(str);
}
// 访问元素(随机访问)
System.out.println(list.get(1)); // B
// 删除元素
list.remove("C");
// 判断元素是否存在
System.out.println(list.contains("C")); // false
}
}
HashSet 是基于哈希表实现的集合类,它可以快速查找指定元素。以下是 HashSet 的特点:
以下是 HashSet 的示例代码:
import java.util.HashSet;
import java.util.Set;
public class HashSetDemo {
public static void main(String[] args) {
Set<String> set = new HashSet<>();
// 添加元素
set.add("A");
set.add("B");
set.add("C");
// 遍历元素(顺序可能是随机的)
for (String str : set) {
System.out.println(str);
}
// 判断元素是否存在
System.out.println(set.contains("C")); // true
// 删除元素
set.remove("C");
// 判断元素是否存在
System.out.println(set.contains("C")); // false
}
}