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

网站自助建设推广seo资料网

网站自助建设推广,seo资料网,婚礼婚庆网站建设,苏州网站优化1.什么是Map Java里的Map接口是一个集合根接口,表示一个 键值对(Key-Value) 的映射。 简单来说就是键和值是一对的,每一个 Key都有唯一确定的 Value对应。 其中要求 键(Key) 唯一,因为是按照…

1.什么是Map

Java里的Map接口是一个集合根接口,表示一个 键值对(Key-Value) 的映射。

简单来说就是键和值是一对的,每一个 Key都有唯一确定的 Value对应。

其中要求 键(Key) 唯一,因为是按照Key去找Value的,如果Key重复,就找不到应该是对应的哪一个Value。

举一个简单的例子就是,每一个学号对应一位学生,那学号与学生姓名就是一对键值对,学号为键,学生为值,学号不能重复,学生姓名可以重复。

因此,Map最重要的特性就是去重,Set底层使用的就是Map集合。

2.Java中的Map

Java中的Map集合是和Collection接口同一等级的集合根接口。
Java集合

2.1 Java中的Map接口

Map 的三个 collection 视图

可以从 Keyset, Values, Entry三个角度来分析Java中的Map接口。

2.1.1 Keyset

KeySet 是一个 Map 中键(key)的集合,以 Set 的形式保存,不允许重复,因此键存储的对象需要重写 equals() 和 hashCode() 方法。

在上图就是保存 AA, BB, CC, DD… 等键的集合,也就是左边的那一列。

可以通过 Map.keySet() 方法获得。

2.1.2 Values

Values 是一个 Map 中值 (value) 的集合,以 Collection 的形式保存,因此可以重复。

在上图就是保存 90,90,56,78… 等值的集合,也就是右边那一列。

通过 Map.values() 方法获得。

2.1.3 Entry

Entry 是 Map 接口中的静态内部接口,表示一个键值对的映射,例如上图中 AA-90 这一组映射关系。

Entry

Entry 具有上图中的方法:

  • getKey() , 获取这组映射中的键 key
  • getValue() , 获取这组映射中的值 value
  • setValue() ,修改这组映射中的值
  • hashCode() , 返回这个 Entry 的哈希值
  • equals() , 对比 key-value 是否相等

通过 Map.entrySet() 方法获得的是一组 Entry 的集合,保存在 Set 中,所以 Map 中的 Entry 也不能重复。

public Set<Map.Entry<K,V>> entrySet();

3.Map 的实现类

Map体系的继承树
Map 的实现类主要有 4 种:

  • Hashtable
    • 古老,线程安全
  • HashMap
    • 速度很快,但没有顺序
  • TreeMap
    • 有序的,效率比 HashMap 低
  • LinkedHashMap
    • 结合 HashMap 和 TreeMap 的有点,有序的同时效率也不错,仅比 HashMap 慢一点

其中后三个的区别很类似 Set 的实现类:

  • HashSet
  • TreeSet
  • LinkedHashSet
    Map 的每个实现类都应该实现 2 个构造方法:
  1. 无参构造方法,用于创建一个空的 map
  2. 参数是 Map 的构造方法,用于创建一个包含参数内容的新 map

第二种构造方法允许我们复制一个 map。

虽然没有强制要求,但自定义 Map 实现类时最好都这样来。

参考链接

Java 集合深入理解(14):Map 概述

【Java】Map介绍和使用

Java :集合(4)——Map 用法详解

http://www.mmbaike.com/news/53426.html

相关文章:

  • 做网站怎么调用栏目百分百营销软件
  • 美食类网站开发需求seo是付费还是免费推广
  • 暴利产品竞价单页网站自己如何注册网站
  • 企业网站建设有什么好vue seo 优化方案
  • 世界杯网站建设关键词搜索量怎么查
  • 哪里有做网站技术最有效的网络推广方式
  • 重置wordpress密码google搜索引擎优化
  • 专业做网站建优书网首页
  • 中山精品网站建设精英网络销售怎么聊客户
  • esp8266做网站深圳seo关键词优化
  • 做相片网站新手如何做网上销售
  • 邯郸专业网站建设报价成都百度推广
  • 谷歌推广运营济南seo网站关键词排名
  • 做网站如何让用户注册美国seo薪酬
  • 网站做cnzz流量统计台州网络推广
  • 用ps做三网站横幅长春网站建设公司哪家好
  • 仿站小工具官网百度关键词屏蔽
  • 服装如何做微商城网站建设重庆seo网络优化咨询热线
  • 滁州网站建设推广自己建网站的详细步骤
  • 网站虚拟主机共享免费推广方式都有哪些
  • 网页图片不清晰怎么办网站关键字优化软件
  • 做b2c网站还是平台国内seo排名分析主要针对百度
  • 网站建设费摊销烟台网络推广
  • 自己做网站排名深圳招聘网络推广
  • php 网站换空间电商网站排名
  • 深圳宝安网站设计杭州推广公司排名
  • 做彩页素材的网站广告营销方式有哪几种
  • 怎么做抽奖网站百度优化排名
  • 做门的网站建设线上推广方式有哪些
  • 人民大学网站建设比较火的推广软件