容器与数据结构

Posted shuzi0806

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了容器与数据结构相关的知识,希望对你有一定的参考价值。

一:容器

分类:

技术图片

增:

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);

ArrayList

可变长(数组扩容 要溢出了时创建更大的数组,把老数组copy过去覆盖新数组)

以上是关于容器与数据结构的主要内容,如果未能解决你的问题,请参考以下文章

Android:使用 putExtra 从片段访问容器活动对象?

使用 Relay 和 React-Native 时的条件片段或嵌入的根容器

从单个按钮从多个片段中提取数据

将Android片段移动到不同的容器无法更改片段的容器ID

FAB 的片段布局与 CoordinatorLayout 冲突

中继片段变量