学习笔记(三十六):ArkTs-@ohos.util.HashMap (非线性容器HashMap)
概述:
HashMap底层使用数组+链表+红黑树的方式实现,查询、插入和删除的效率都很高。
HashMap存储内容基于key-value的键值对映射,不能有重复的key,且一个key只能对应一个value
一、导入
import {HashMap} from '@kit.ArkTS'
二、定义
let hashMap: HashMap<string, number> = new HashMap();
三、常用函数
1、isEmpty,判断该HashMap是否为空
2、hasKey,判断此HashMap中是否含有该指定key
3、hasValue,判断此HashMap中是否含有该指定value
maps :HashMap<String,String> = new HashMap() this.maps.set('name',"Alice") console.log('存在name',this.maps.hasKey('name')) console.log('存在agee',this.maps.hasValue('age')) Logs: 存在name true 存在agee false
4、get,获取指定key所对应的value,不存在返回undefined
let maps :HashMap<String,String> = new HashMap() maps.set('name',"Alice") let otherMaps:HashMap<String,String> = new HashMap() otherMaps.set('age','11') maps.setAll(otherMaps) console.log('存在name',maps.hasKey('name')) console.log('存在age',maps.hasValue('age')) console.log('存在age',maps.length)
6、set,向HashMap中添加或更新一组数据
7、remove,删除指定key所对应元素
8、clear,清除HashMap中的所有元素,并把length置为0
9、keys,返回包含此映射中包含的键的新迭代器对象
10、values,返回包含此映射中包含的键对应的值的新迭代器对象
let maps :HashMap<String,String> = new HashMap() maps.set('name',"Alice") maps.set('age',"12") maps.forEach((value?: string, key?: string) => { console.log("value:" + value, "key:" + key); }); Logs: value:Alice key:name value:12 key:age
作者:听着music睡
出处:http://www.cnblogs.com/xqxacm/
Android交流群:38197636
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2015-11-11 Android项目实战(九):CustomShapeImageView 自定义形状的ImageView