标签:str add src 扩容 rem lin 源码 arraylist 溢出
c.add("123");
c.add("456");
c.add("456");
//c=["123","456","456"]
这两个456字符串是不是一个对象呢
这里是否是一个对象还是遵循字符串是否是一个对象的原则,如果是字符串字面量则是一个对象,如果是字面量拼接也是,但是如果是变量的拼接就不是了。
ArrayList:数组,查询效率高 增删效率低 线程不安全
LinkedList 链表 增删效率高 查询效率低 线程不安全
Vector 线程安全
c.remove("456")
这里两个456字符串对象虽然是同一个对象,但是如图源码里的remove,当找到一个就return了,如果想要删除所有的456,可以使用removeAll
c1=["456"];
c.removeAll(c1);
c.set(1,"789");
c.get(1);
可变长(数组扩容 要溢出了时创建更大的数组,把老数组copy过去覆盖新数组)
标签:str add src 扩容 rem lin 源码 arraylist 溢出
原文地址:https://www.cnblogs.com/shuzi0806/p/12271091.html