es6set和map区别_list和map的区别面试

es6set和map区别_list和map的区别面试转自https://blog.csdn.net/terence1212/article/details/52487656set是一种关联式容器,其特性如下:set以RBTree作为底层容器所得元素的只有key没有value,value就是key不允许出现键值重复所有的元素都会被自动排序不能通过迭代器来改变set的值,因为set的值就是键map和set一样是关联式容器,它们的底层容器都是红黑树,区别…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

转自https://blog.csdn.net/terence1212/article/details/52487656

set是一种关联式容器,其特性如下:

  • set以RBTree作为底层容器
  • 所得元素的只有key没有value,value就是key
  • 不允许出现键值重复
  • 所有的元素都会被自动排序
  • 不能通过迭代器来改变set的值,因为set的值就是键

map和set一样是关联式容器,它们的底层容器都是红黑树,区别就在于map的值不作为键,键和值是分开的。它的特性如下:

  • map以RBTree作为底层容器
  • 所有元素都是键+值存在
  • 不允许键重复
  • 所有元素是通过键进行自动排序的
  • map的键是不能修改的,但是其键对应的值是可以修改的

关于自动排序,写一个c++ 程序验证一下

#include <iostream>
#include <set>
#include <map>
#include <string>

using namespace std;
int main()
{
    int numList[6]={1,4,2,5,6,0};


    //1.set add
    set<int> numSet;
    for(int i=0;i<6;i++)
    {
        //2.1insert into set
        numSet.insert(numList[i]);
    }
    //2.travese set
    for(set<int>::iterator it=numSet.begin() ;it!=numSet.end();it++)
    {
        cout<<*it<<" occurs "<<endl;
    }

    map<int,string> mapStudent;
    mapStudent[4] =  "student_one";
    mapStudent[1] =  "student_two";
    mapStudent[3] =  "student_three";
     map<int, string>::iterator   iter;
     for(iter = mapStudent.begin(); iter != mapStudent.end(); iter++){
          cout<<iter->first<<" "<<iter->second<<endl;
     }

    return 0;
}

结果如下:

es6set和map区别_list和map的区别面试

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196241.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SQL2008数据库安装教程_sql server安装完找不到

    SQL2008数据库安装教程_sql server安装完找不到很多初学者在开始安装AdventureWorks2008时,虽然成功安装了,但是却发现其他的数据库都有,就偏偏没有AdventureWorks2008,就如下图所示: 最近很多人问这个问题的解决办法,所以还是有必要写这篇文章的。其实解决的办法很简单:依次【开始菜单】à【MicrosoftSQLServer200n】à【配置工具】à【SQLServer配置管理器】,打开如下图所示: 然后选择【SQLSERVER(MSSQLSERVER)】,右键选择属性,如下图所示,勾选前

    2025年10月31日
    4
  • 深度学习:文本CNN-textcnn

    深度学习:文本CNN-textcnn对于文本分类问题,常见的方法无非就是抽取文本的特征,比如使用doc2evc或者LDA模型将文本转换成一个固定维度的特征向量,然后在基于抽取的特征训练一个分类器。然而研究证明,TextCnn在文本分类问题上有着更加卓越的表现。从直观上理解,TextCNN通过一维卷积来获取句子中n-gram的特征表示。TextCNN对文本浅层特征的抽取能力很强,在短文本领域如搜索、对话领域专注…

    2022年4月19日
    122
  • navicat15激活码最新_通用破解码

    navicat15激活码最新_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    79
  • 排查IOException Broken pipe 错误,偶遇国外小哥

    大家好,我是阿飞云怕什么真理无穷,进一步有近一步的欢喜今天我们聊一个异常:java.io.IOException: Broken pipe,为什么会报这个异常,这个异常要怎么解决?以及最后…

    2022年3月1日
    322
  • javaweb酒店管理系统源代码_java简单酒店管理系统代码

    javaweb酒店管理系统源代码_java简单酒店管理系统代码大家好,我是全微毕设团队的创始人,本团队擅长JAVA(SSM,SSH,SPRINGBOOT)、PYTHON、PHP、C#、安卓等多项技术。今天将为大家分析一个小型酒店管理系统(当前酒店管理系统已经得到了充足的发展和完善,一些大的酒店购买了功能强大、数据量处理快速、客户行为研究的软件,借此来提升酒店的核心竞争力。但是对于一些中小规模的酒店而言,昂贵的系统花费、专人的维护是不现实的,也是非常不灵活的。…

    2022年9月25日
    2
  • 六大主流大数据采集平台架构分析[通俗易懂]

    六大主流大数据采集平台架构分析[通俗易懂]日志收集的场景DT时代,数以亿万计的服务器、移动终端、网络设备每天产生海量的日志。中心化的日志处理方案有效地解决了在完整生命周期内对日志的消费需求,而日志从设备采集上云是始于足下的第一步。随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台:ApacheFlumeFluentdLogstashChukwaScribeSplunkForwar

    2022年6月10日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号