Java如何add对象
添加对象到集合的方法
在Java中,向集合(如List、Set等)添加对象通常使用add()方法。具体实现取决于使用的集合类型。
使用List添加对象
List是有序集合,允许重复元素。常见的实现类有ArrayList和LinkedList。
List<String> list = new ArrayList<>();
list.add("对象1"); // 添加单个对象
list.add("对象2");
List<String> anotherList = Arrays.asList("对象3", "对象4");
list.addAll(anotherList); // 添加另一个集合的所有元素
使用Set添加对象
Set是无序集合,不允许重复元素。常见的实现类有HashSet和TreeSet。

Set<String> set = new HashSet<>();
set.add("对象1"); // 添加单个对象
set.add("对象2"); // 重复添加会被忽略
Set<String> anotherSet = new HashSet<>(Arrays.asList("对象3", "对象4"));
set.addAll(anotherSet); // 添加另一个集合的所有元素
使用Map添加对象
Map存储键值对,添加对象使用put()方法而非add()。
Map<String, Integer> map = new HashMap<>();
map.put("键1", 1); // 添加键值对
map.put("键2", 2);
自定义对象的添加
当集合存储自定义类对象时,需确保正确实现了equals()和hashCode()方法(特别是用于Set和Map时)。

class Person {
private String name;
private int age;
// 构造方法、getter/setter省略
@Override
public boolean equals(Object o) {
// 实现equals逻辑
}
@Override
public int hashCode() {
// 实现hashCode
}
}
List<Person> people = new ArrayList<>();
people.add(new Person("张三", 25));
并发环境下的添加
在多线程环境下,需使用线程安全集合或同步措施。
List<String> syncList = Collections.synchronizedList(new ArrayList<>());
syncList.add("线程安全对象");
// 或使用CopyOnWriteArrayList
CopyOnWriteArrayList<String> cowList = new CopyOnWriteArrayList<>();
cowList.add("写时复制对象");
不可变集合的添加
Java 9+提供了创建不可变集合的工厂方法,这类集合不能添加元素。
List<String> immutableList = List.of("元素1", "元素2");
// immutableList.add("元素3"); // 抛出UnsupportedOperationException






