用什么做视频网站比较好的网站右键禁止
news/
2025/10/5 8:34:55/
文章来源:
用什么做视频网站比较好的,网站右键禁止,网站开发一般做几个适配,公司网址怎么申请非线性容器实现能快速查找的数据结构#xff0c;其底层通过 hash 或者红黑树实现#xff0c;包括 HashMap、HashSet、TreeMap、TreeSet、LightWeightMap、LightWeightSet、PlainArray 七种。非线性容器中的 key 及 value 的类型均满足 ECMA 标准。
HashMap
HashMap 可用来存…非线性容器实现能快速查找的数据结构其底层通过 hash 或者红黑树实现包括 HashMap、HashSet、TreeMap、TreeSet、LightWeightMap、LightWeightSet、PlainArray 七种。非线性容器中的 key 及 value 的类型均满足 ECMA 标准。
HashMap
HashMap 可用来存储具有关联关系的 key-value 键值对集合存储元素中 key 是唯一的每个 key 会对应一个 value 值。
HashMap 依据泛型定义集合中通过 key 的 hash 值确定其存储位置从而快速找到键值对。HashMap 的初始容量大小为 16并支持动态扩容每次扩容大小为原始容量的 2 倍。HashMap 底层基于 HashTable 实现冲突策略采用链地址法。
HashMap 和 TreeMap 相比HashMap 依据键的 hashCode 存取数据访问速度较快。而 TreeMap 是有序存取效率较低。
HashSet 基于 HashMap 实现。HashMap 的输入参数由 key、value 两个值组成。在 HashSet 中只对 value 对象进行处理。
需要快速存取、删除以及插入键值对数据时推荐使用 HashMap。
HashMap 进行增、删、改、查操作的常用 API 如下 HashSet
HashSet 可用来存储一系列值的集合存储元素中 value 是唯一的。
HashSet 依据泛型定义集合中通过 value 的 hash 值确定其存储位置从而快速找到该值。HashSet 初始容量大小为 16支持动态扩容每次扩容大小为原始容量的 2 倍。value 的类型满足 ECMA 标准中要求的类型。HashSet 底层数据结构基于 HashTable 实现冲突策略采用链地址法。
HashSet 基于 HashMap 实现。在 HashSet 中只对 value 对象进行处理。
HashSet 和 TreeSet 相比HashSet 中的数据无序存放即存放元素的顺序和取出的顺序不一致而 TreeSet 是有序存放。它们集合中的元素都不允许重复但 HashSet 允许放入 null 值TreeSet 不允许。
可以利用 HashSet 不重复的特性当需要不重复的集合或需要去重某个集合的时候使用。
HashSet 进行增、删、改、查操作的常用 API 如下 TreeMap
TreeMap 可用来存储具有关联关系的 key-value 键值对集合存储元素中 key 是唯一的每个 key 会对应一个 value 值。
TreeMap 依据泛型定义集合中的 key 值是有序的TreeMap 的底层是一棵二叉树可以通过树的二叉查找快速的找到键值对。key 的类型满足 ECMA 标准中要求的类型。TreeMap 中的键值是有序存储的。TreeMap 底层基于红黑树实现可以进行快速的插入和删除。
TreeMap 和 HashMap 相比HashMap 依据键的 hashCode 存取数据访问速度较快。而 TreeMap 是有序存取效率较低。
一般需要存储有序键值对的场景可以使用 TreeMap。
TreeMap 进行增、删、改、查操作的常用 API 如下 TreeSet
TreeSet 可用来存储一系列值的集合存储元素中 value 是唯一的。
TreeSet 依据泛型定义集合中的 value 值是有序的TreeSet 的底层是一棵二叉树可以通过树的二叉查找快速的找到该 value 值value 的类型满足 ECMA 标准中要求的类型。TreeSet 中的值是有序存储的。TreeSet 底层基于红黑树实现可以进行快速的插入和删除。
TreeSet 基于 TreeMap 实现在 TreeSet 中只对 value 对象进行处理。TreeSet 可用于存储一系列值的集合元素中 value 唯一且有序。
TreeSet 和 HashSet 相比HashSet 中的数据无序存放而 TreeSet 是有序存放。它们集合中的元素都不允许重复但 HashSet 允许放入 null 值TreeSet 不允许。
一般需要存储有序集合的场景可以使用 TreeSet。
TreeSet 进行增、删、改、查操作的常用 API 如下 LightWeightMap
LightWeightMap 可用来存储具有关联关系的 key-value 键值对集合存储元素中 key 是唯一的每个 key 会对应一个 value 值。LightWeightMap 依据泛型定义采用更加轻量级的结构底层标识唯一 key 通过 hash 实现其冲突策略为线性探测法。集合中的 key 值的查找依赖于 hash 值以及二分查找算法通过一个数组存储 hash 值然后映射到其他数组中的 key 值以及 value 值key 的类型满足 ECMA 标准中要求的类型。
初始默认容量大小为 8每次扩容大小为原始容量的 2 倍。
LightWeightMap 和 HashMap 都是用来存储键值对的集合LightWeightMap 占用内存更小。
当需要存取 key-value 键值对时推荐使用占用内存更小的 LightWeightMap。
LightWeightMap 进行增、删、改、查操作的常用 API 如下 LightWeightSet
LightWeightSet 可用来存储一系列值的集合存储元素中 value 是唯一的。
LightWeightSet 依据泛型定义采用更加轻量级的结构初始默认容量大小为 8每次扩容大小为原始容量的 2 倍。集合中的 value 值的查找依赖于 hash 以及二分查找算法通过一个数组存储 hash 值然后映射到其他数组中的 value 值value 的类型满足 ECMA 标准中要求的类型。
LightWeightSet 底层标识唯一 value 基于 hash 实现其冲突策略为线性探测法查找策略基于二分查找法。
LightWeightSet 和 HashSet 都是用来存储键值的集合LightWeightSet 的占用内存更小。
当需要存取某个集合或是对某个集合去重时推荐使用占用内存更小的 LightWeightSet。
LightWeightSet 进行增、删、改、查操作的常用 API 如下 PlainArray
PlainArray 可用来存储具有关联关系的键值对集合存储元素中 key 是唯一的并且对于 PlainArray 来说其 key 的类型为 number 类型。每个 key 会对应一个 value 值类型依据泛型的定义PlainArray 采用更加轻量级的结构集合中的 key 值的查找依赖于二分查找算法然后映射到其他数组中的 value 值。
初始默认容量大小为 16每次扩容大小为原始容量的 2 倍。
PlainArray 和 LightWeightMap 都是用来存储键值对且均采用轻量级结构但 PlainArray 的 key 值类型只能为 number 类型。
当需要存储 key 值为 number 类型的键值对时可以使用 PlainArray。
PlainArray 进行增、删、改、查操作的常用 API 如下 非线性容器的使用
此处列举常用的非线性容器 HashMap、TreeMap、LightWeightMap、PlainArray 的使用示例包括导入模块、增加元素、访问元素及修改等操作示例代码如下所示
// HashMap
import HashMap from ohos.util.HashMap; // 导入HashMap模块
let hashMap new HashMap();
hashMap.set(a, 123);
hashMap.set(4, 123); // 增加元素
console.info(result: ${hashMap.hasKey(4)}); // 判断是否含有某元素
console.info(result: ${hashMap.get(a)}); // 访问元素
// TreeMap
import TreeMap from ohos.util.TreeMap; // 导入TreeMap模块
let treeMap new TreeMap();
treeMap.set(a, 123);
treeMap.set(6, 356); // 增加元素
console.info(result: ${treeMap.get(a)}); // 访问元素
console.info(result: ${treeMap.getFirstKey()}); // 访问首元素
console.info(result: ${treeMap.getLastKey()}); // 访问尾元素
// LightWeightMap
import LightWeightMap from ohos.util.LightWeightMap; // 导入LightWeightMap模块
let lightWeightMap new LightWeightMap();
lightWeightMap.set(x, 123);
lightWeightMap.set(8, 356); // 增加元素
console.info(result: ${lightWeightMap.get(a)}); // 访问元素
console.info(result: ${lightWeightMap.get(x)}); // 访问元素
console.info(result: ${lightWeightMap.getIndexOfKey(8)}); // 访问元素
// PlainArray
import PlainArray from ohos.util.PlainArray // 导入PlainArray模块
let plainArray new PlainArray();
plainArray.add(1, sdd);
plainArray.add(2, sff); // 增加元素
console.info(result: ${plainArray.get(1)}); // 访问元素
console.info(result: ${plainArray.getKeyAt(1)}); // 访问元素那么要想成为一名鸿蒙高级开发以上知识点是必须要掌握的除此之外还需要掌握一些鸿蒙应用开发相关的一些技术需要我们共同去探索。
为了能够让大家跟上互联网时代的技术迭代在这里我特邀了几位行业大佬整理出一份最新版的鸿蒙学习提升资料有需要的小伙伴自行领取限时开源先到先得~~~~
领取以下高清学习路线原图请点击→《鸿蒙 (Harmony OS)开发学习手册》纯血鸿蒙HarmonyOS基础技能学习路线图 领取以上完整高清学习路线图请点击→《鸿蒙基础入门学习指南》小编自己整理的部分学习资料包含有高清视频、开发文档、电子书籍等 以上分享的学习路线都适合哪些人跟着学习
-应届生/计算机专业 通过学习鸿蒙新兴技术入行互联网未来高起点就业。-0基础转行 提前布局新方向抓住风口自我提升获得更多就业机会。-技术提升/进阶跳槽 发展瓶颈期提升职场竞争力快速掌握鸿蒙技术享受蓝海红利。 最后
鸿蒙开发学习是一个系统化的过程从基础知识的学习到实战技能的锤炼再到对前沿技术的探索每一环节都至关重要。希望这份教程资料能帮助您快速入门并在鸿蒙开发之路上步步攀升成就一番事业。让我们一起乘风破浪拥抱鸿蒙生态的广阔未来
如果你觉得这篇内容对你有帮助我想麻烦大家动动小手给我点赞转发有你们的 『点赞和评论』才是我创造的动力。
关注我同时可以期待后续文章ing不定期分享原创知识。
想要获取更多完整鸿蒙最新VIP学习资料请点击→《鸿蒙HarmonyOS分布式项目实战》
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928039.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!