映射表抽象

映射表: 实现键与值之间的关联。

  • 映射表提供了一种关联关系,在称为键的标识标记和其关联值之间建立关联,而关联值通常是比键要大得多且复杂得多的结构。

  • 在Java集合框架中,Map是一个接口,必须用实现了Map接口的具体类来构建其对象。

  • 应用:如编程语言的解释器需要能够将值赋值给变量,然后用名字来引用它。映射表使维护变量名与其对应的值之间的关联变得容易。

HashMap类: 实现映射表思想的类之一,与TreeMap相较,HashMap在迭代其元素时处理键的效率更高,但遍历键的顺序看起来像是随机的,对于需要按顺序处理键的应用来说,使用起来方便性相对欠缺。

TreeMap类: 效率略差,但优势是键是按照它们的内在的顺序被迭代的。

映射表抽象

Map接口的结构

Map需要用类型参数来指定键的类型和值的类型。

Map<String, String> dict = new TreeMap<String, String>();
Map<String, Double> varTable = new HashMap<String, Double>();
创建不包含任何键和值的空映射表。随后需要将键/值对添加到映射表中。
Map接口指定的常用方法
方法作用
size()返回该映射表中所包含的键/值对的数量
isEmpty()如果该映射表为空,则返回true
put(key,value)在该映射表中将指定的键与值关联起来。如果key之前没有定义过,那么就会添加一个新的项;如果该关联之前已经存在,那么旧的值就会被丢弃并替换成新的值
get(key)返回该映射表中当前与key关联的值。如果key未定义,则get返回null
remove(key)从映射表中移除key以及与其相关联的值。如果key不存在,则该调用不会对映射表产生影响
containKey(key)如果key与某个值相关联,则返回true
clear()移除该映射表中的所有键/值对
keyset()返回该映射表中所有键构成的集合

这些方法实现映射表基础行为的方法是put和get。

Map抽象的操作
  • 将varTable声明为Map<String, Double>,然后将其初始化成一个HashMap:
    在这里插入图片描述
  • 使用put建立新的关联。如调用
varTable.put("pi",3.14159); 
//其效果是添加了一项在键“pi”和值3.14159之间的关联:

在这里插入图片描述
类似,调用

varTable.put("e",2.71828);

在这里插入图片描述

  • 使用get来获取这些值。

调用

varTable.get("e");
//将返回数值2.71828

调用

varTable.get("pi");
//将返回数值3.14159
  • 通过put来修改映射表中得值
varTable.put("pi",3.0); 

在这里插入图片描述
调用remove来彻底移除一个键

varTable.remove("pi");

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值