Java进阶-remove 方法源码解析

remove 也是用 equals 方法进行比较,会删掉 equals 方法返回 true 的元素

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.util.ArrayList;
import java.util.Collection;

public class CollectionTest05 {

public static void main(String[] args) {
// 创建集合对象
Collection c = new ArrayList();
// 创建字符串对象
String s1 = new String("hello");
c.add(s1);

// 创建一个新的字符串对象
String s2 = new String("hello");
// 删除s2
c.remove(s2); // s1.equals(s2) java 认为 s1和s2是一样的,删除s2就是删除s1

System.out.println(c.size()); // 0
}
}