学习笔记(三十六):ArkTs-@ohos.util.HashMap (非线性容器HashMap)

news/2024/11/13 17:22:16/文章来源:https://www.cnblogs.com/xqxacm/p/18540268

概述:

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

5、setAll,将一个HashMap中的所有元素组添加到另一个hashMap中
    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,返回包含此映射中包含的键对应的值的新迭代器对象

11、replace,对HashMap中一组数据进行更新(替换)
12、forEach,通过回调函数来遍历HashMap实例对象上的元素以及元素对应的下标
    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
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/832004.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Scrum冲刺-第一篇

这个作业属于哪个课程 广工计院计科34班这个作业要求在哪里 作业要求这个作业的目标 小队各成员的任务确认和项目期望一、团队简介: 队名:edg.gdut 成员:姓名 学号罗祖文 3121004537郑志涛 3122004547陈恺麟 3122004515许凌铎 3122004540邓茗骏 3122004517李晓彬 3122004531…

(1) Pytorch深度学习—数值处理

(1)Pytorch——数值处理参考于李沐“动手学深度学习”系列以及网上各路大佬的博客资料,感谢大家的分享,如错改,如侵删。torch中的数值处理 数值处理是深度学习中极其重要的一部分,张量(tensor)是后续进行处理和计算的基本单位。张量表示一个由数值组成的数组,这个数组…

904. 水果成蓝

题目 自己第一次写的,结果超时了 class Solution { public:int totalFruit(vector<int> &fruits){int r = 1;int res = 1;while (r < fruits.size()){int l = r - 1;int n = 1; // 代表不同的种类个数int second = -1;while (n <= 2 && l >= 0){i…

Lift, Splat, Shoot, LSS代码详尽分析与解读

LSS是英伟达在ECCV2020上发表的文章《Lift, Splat, Shoot: Encoding Images from Arbitrary Camera Rigs by Implicitly Unprojecting to 3D》中提出的一个BEV感知算法,后续很多BEV感知算法如CaDDN、BEVDet都是在LSS的基础上实现的。本文将结合论文和代码详细解读LSS的原理。鸟…

【Playwright + Python】系列(九)Playwright 调用 Chrome 插件,小白也能事半功倍

哈喽,大家好,我是六哥!今天我来给大家分享一下如何使用playwight调用chrome插件,面向对象为功能测试及零基础小白,我尽量用大白话的方式举例讲解,力求所有人都能看懂,建议大家先收藏,以免后面找不到。😎 什么是chrome插件? 就是辅助你工作生活的助手,会让你事半功倍…

基于Java+SpringBoot+Mysql在线课程学习教育系统功能设计与实现四

技术点:SpringBoot+SpringDataJPA+Mysql+Freemaker+Bootstrap+JS+CSS+HTML 部分功能:课程分类信息数据层Dao、课程信息数据层Dao、课程订单信息数据层Dao、课程评价信息数据层Dao、课程视频信息数据层Dao、课程小节信息数据层Dao、课程试题信息数据层Dao、课程试卷信息数据层…

极限limit

The Limit 两个重要极限\[\displaystyle\lim_{x\to 0}\frac{sinx}{x}=1 \]\[\displaystyle\lim_{x\to \infty}(1+x)^{\frac{1}{x}}=e \]间断点 1.第一类间断点 第一类间断点是指在该点附近的函数值存在,但在该点的极限不存在。具体来说,若 $ f(x) $ 在 $ x = c $ 附近的左极限…

基于Java+SpringBoot+Mysql在线课程学习教育系统功能设计与实现三

该系统总共24张表,代码整洁,每个功能、接口上都有注释说明。 运行环境:jdk1.8、mysql5.x、eclipse/idea、maven3.5/3.6 包远程运行的哦。 特色功能:发布课程、学习课程、分享资料、资料讨论等。 部分功能:关于我们信息实体类Entity、评论信息实体类Entity、课程资料信息实…

SpringBoot+Thyemleaf开发环境正常,打jar包发到服务器就报错Template might not exist or might not ..

前言 前几天,我在开发前后端一体的项目时候,遇到了一个巨大的坑。这个是关于SpringBoot+Thyemleaf的。现象就是,我在本地开发环境是好的,正常访问某个页面,但是到了打成jar包后,部署到服务器之后,再访问那个页面,总是报错。这个报错是类似于Template might not exist o…

推荐一个Star超过2K的.Net轻量级的CMS开源项目

推荐一个具有模块化和可扩展的架构的CMS开源项目。 01 项目简介 Piranha CMS是一个轻量级且跨平台的CMS库,专为.NET 8设计。 该项目提供多种模板,具备CMS基本功能,也有空模板方便从头开始构建新网站,甚至可以作为移动应用的后端。 是一个完全解耦的CMS,意味着我们可以使用…

Chrome如何查看保存的网站密码,如此简单!

前言 我在开发java应用的时候,一般都是使用谷歌浏览器的,也就是Chrome浏览器。这个浏览器几乎是所有浏览器里面功能最强大的浏览器。里面有很多神奇的东西。比如,它可以帮助我们记住我们登录的网站的账号密码。有时候,我们可能已经习惯了谷歌浏览器帮助我们保存的密码了,有…

现代IT基础设施管理(1):Terraform初识和小试牛刀

基础设施包括各种云,像国内的阿里云、腾讯云和华为云,国外的AWS、微软Azure云和谷歌云,还有Kubernetes和OpenStack,都可以用Terraform进行资源管理。使用基础设施即代码(Infrastructure as Code, IaC)的方式来管理基础设施,这是现代IT基础设施管理的一个重要趋势,它允许…