set跟map的区别_oracle set用法

set跟map的区别_oracle set用法1.Map是键值对,Set是值的集合,当然键和值可以是任何的值;2.Map可以通过get方法获取值,而set不能因为它只有值;3.都能通过迭代器进行for…of遍历;4.Set的值是唯一的可以做数组去重,Map由于没有格式限制,可以做数据存储5.map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序。SetSet对象允许你存储任何类型的值,无论.

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

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

1.Map是键值对,Set是值的集合,当然键和值可以是任何的值;

2.Map可以通过get方法获取值,而set不能因为它只有值;

3.都能通过迭代器进行for…of遍历;

4.Set的值是唯一的可以做数组去重,Map由于没有格式限制,可以做数据存储

5.map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序。

 

Set

Set对象允许你存储任何类型的值,无论是原始值或者是对象引用。它类似于数组,但是成员的值都是唯一的,没有重复的值。

Set 本身是一个构造函数,用来生成Set 数据结构。Set函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化。

Set中的特殊值

Set 对象存储的值总是唯一的,所以需要判断两个值是否恒等。有几个特殊值需要特殊对待:

+0 与 -0 在存储判断唯一性的时候是恒等的,所以不重复

undefined 与 undefined 是恒等的,所以不重复

NaN 与 NaN 是不恒等的,但是在 Set 中认为NaN与NaN相等,所有只能存在一个,不重复。

Set实例对象的属性

size:返回Set实例的成员总数

Set实例对象的方法

add(value):添加某个值,返回 Set 结构本身(可以链式调用)。

delete(value):删除某个值,删除成功返回true,否则返回false。

has(value):返回一个布尔值,表示该值是否为Set的成员。

clear():清除所有成员,没有返回值。

数组去重(利用扩展运算符)

 

Map

Map对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。构造函数Map可以接受一个数组作为参数。

Map和Object的区别

一个Object 的键只能是字符串或者 Symbols,但一个Map 的键可以是任意值。

Map中的键值是有序的(FIFO 原则),而添加到对象中的键则不是。

Map的键值对个数可以从 size 属性获取,而 Object 的键值对个数只能手动计算。

Object 都有自己的原型,原型链上的键名有可能和你自己在对象上的设置的键名产生冲突。

Map对象的属性

size:返回Map对象中所包含的键值对个数

Map对象的方法

set(key, val): 向Map中添加新元素

get(key): 通过键值查找特定的数值并返回

has(key): 判断Map对象中是否有Key所对应的值,有返回true,否则返回false

delete(key): 通过键值从Map中移除对应的数据

clear(): 将这个Map中的所有元素删除

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/196556.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 线程理论知识

    一、什么是线程线程:顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程所以,进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合),而线程才

  • 为什么从Java开发转测试?

    为什么从Java开发转测试?前言很多粉丝关注我可能是从乐优商城项目关注的,这确实是我曝光度最高的一篇blog了包括现在新增的粉丝的话也是从乐优商城项目blog关注的ps:大家有询问我要源码,我以前是有上传到github上的,但是由于里面用到了阿里云,github天天给我发邮件报警说有风险,然后我就删除了,所以源码的话,现在是没有了的但是我觉得乐优商城过于大,用的技术栈也很多,如果面试的时候不能充分讲明白的话,尽量不要用这个项目去面试大家如果要用他面试的话可以从以下几个思路去讲1、整体是一个什么项目?主体业务流程是什么

  • 备份数据库的命令.sql

    备份数据库的命令.sql

  • 深入Redis客户端(redis客户端属性、redis缓冲区、关闭redis客户端)「建议收藏」

    深入Redis客户端(redis客户端属性、redis缓冲区、关闭redis客户端)「建议收藏」Redis数据库采用I/O多路复用技术实现文件事件处理器,服务器采用单线程单进程的方式来处理多个客户端发送过来的命令请求,它同时与多个客户端建立网络通信。服务器会为与它相连接的客户端创建相应的redis.h/redisClient结构,在这个结构中保存了当前客户端的相关属性及执行相关功能时的数据结构。I/O多路复用:linux有五类io模型1.阻塞2.非阻塞3…

  • plsql development 注册码

    plsql development 注册码今天使用plsqldeveloper时,突然发现使用不了了,后面发现原来之前的那个都是使用版的,后面网上查阅了相关注册码,找到如下两个可以使用的,记录一下,方便自己,也方便大家。productcode:ke4tv8t5jtxz493kl8s2nn3t6xgngcmgf3serialNumber:264452password:xs374ca或者也可用下面这个productcode:4vkjwhfeh3ufnqnm…

  • 转载 spring-data-jpa 介绍 复杂查询,包括多表关联,分页,排序等

    转载 spring-data-jpa 介绍 复杂查询,包括多表关联,分页,排序等本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求。这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring整合的环境中实现。如果需要了解该框架的入门,百度一下,很多入门的介绍。在这篇文章的接下来一篇,会有一个系列来讲解mybatis,这个系列从mybatis的入门开始,到基本使用,和spring整合,和第

发表回复

您的电子邮箱地址不会被公开。

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