当前位置: 首页 > news >正文

【鸿蒙 NEXT】HarmonyOS 容器

List

List和LinkedList相比,LinkedList是双向链表,可以快速地在头尾进行增删,而List是单向链表,无法双向操作。
推荐使用场景: 当需要频繁的插入删除时,推荐使用List高效操作。

ArrayList

推荐使用场景: 当需要频繁读取集合中的元素时,推荐使用ArrayList。

LinkedList

LinkedList和List相比,LinkedList是双向链表,可以快速地在头尾进行增删,而List是单向链表,无法双向操作。
LinkedList和ArrayList相比,插入数据效率LinkedList优于ArrayList,而查询效率ArrayList优于LinkedList。
推荐使用场景: 当需要频繁的插入删除时,推荐使用LinkedList高效操作。

Stack

Stack基于数组的数据结构实现,特点是先进后出,只能在一端进行数据的插入和删除。
Stack和Queue相比,Queue基于循环队列实现,只能在一端删除,另一端插入,而Stack都在一端操作。
推荐使用场景: 一般符合先进后出的场景可以使用Stack。

Queue

Queue的特点是先进先出,只能在头部删除元素,尾部增加元素。
Deque可以两端增删。
推荐使用场景: 一般符合先进先出的场景可以使用Queue。

Deque

double ended queue
Queue的特点是先进先出,只能在头部删除元素,尾部增加元素。
Deque可以两端增删。
推荐使用场景: 需要频繁在集合两端进行增删元素的操作时,推荐使用Deque。

HashSet

HashSet基于HashMap实现。在HashSet中,只对value对象进行处理。
推荐使用场景: 可以利用HashSet不重复的特性,当需要不重复的集合或需要去重某个集合的时候使用。

TreeSet

推荐使用场景: 一般需要存储有序集合的场景,可以使用TreeSet。

Map

PlainArray

推荐使用场景: 当需要存储key值为number类型的键值对时,可以使用PlainArray。

LightWeightMap

推荐使用场景: 当需要存取key-value键值对时,推荐使用占用内存更小的LightWeightMap。

HashMap

推荐使用场景: 需要快速存取、删除以及插入键值对数据时,推荐使用HashMap。

TreeMap

推荐使用场景: 一般需要存储有序键值对的场景,可以使用TreeMap。

http://www.dtcms.com/a/47883.html

相关文章:

  • CSK linux内网靶场
  • Day33 第八章 贪心算法 part06
  • Spring Boot的启动流程
  • 【软考-架构】2.1、操作系统概述-进程管理-同步互斥
  • gradle libs.versions.toml文件
  • 【NLP 30、文本匹配任务 —— 传统机器学习算法】
  • android12 屏幕亮度控制修改为线性变化
  • Apache Shiro 反序列化漏洞全解析(Shiro-550 Shiro-721)
  • SQL 全面指南:从基础语法到高级查询与权限控制
  • C++运算符重载的学习笔记
  • 初阶数据结构习题【6】(3顺序表和链表)—— 206. 反转链表
  • 大模型——基于 DIFY 的自动化数据分析实战
  • 文件魔数与其他特征:揭开文件识别的神秘面纱
  • 深入理解指针与回调函数:从基础到实践
  • 【华为】查看防火墙会话表命令
  • 服务器时间同步
  • 覆盖率记录, 非cross bin
  • Kafka底层结构
  • 使用winlogbeat采集windows日志
  • 《 C++ 点滴漫谈: 二十九 》风格 vs. C++ 风格:类型转换的对决与取舍
  • 解锁智能变革密码:浙江大学2025年DeepSeek行业应用案例集深度解析
  • x 的平方根
  • Qt开发⑪Qt网络+Qt音视频_使用实操
  • HTTP超文本传输协议
  • 排序算法——快速排序
  • 探秘基带算法:从原理到5G时代的通信变革【一】引言
  • Unity 打包后EXE运行出现Field to Load il2cpp的一种情况
  • 《解锁HarmonyOS NEXT高阶玩法:艺术图像识别功能开发全攻略》
  • 打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第一天)
  • 【JAVA面试题】== 和 equals() 的区别与使用场景