Dictionary类源码理解

35 篇文章 0 订阅
34 篇文章 0 订阅
文章介绍了Java中的Dictionary类,它是Map接口的一个抽象类,提供了键值对操作的方法如size、isEmpty、get、put和remove等。尽管不推荐直接使用,因为存在局限性(如不能多继承)和过时的枚举接口,但文章对于理解其工作原理仍有帮助。
摘要由CSDN通过智能技术生成

文章目录

  • 前言
  • 一、概述
  • 二、源码理解
    • Dictionary类
    • Dictionary方法
      • Dictionary
      • size
      • isEmpty
      • keys
      • elements
      • get
      • put
      • remove
  • 总结


前言

本文章帮助大家对Dictionary类的理解。


一、概述

Dictionary意为字典。顾名思义,此类类似Map接口,提供方便的键值对访问。但不推荐使用,它对比Map接口,是抽象类,子类只能继承它一个类,比较局限,而且它使用了过时的Enumeration接口对元素进行枚举遍历,所以要使用键值对功能的话,推荐使用Map接口。参考Map接口、Enumeration接口。

二、源码理解

package java.util;
import java.util.Dictionary;

使用Dictionary类时,需引入此包。

Dictionary类

public abstract class Dictionary<K,V> { /*...*/ }

抽象类,无法实例化。使用类时传入泛型KV,分别为键值对元素的键和值的类型。

Dictionary方法

Dictionary

public Dictionary() {}

构造函数,不做处理。

size

public abstract int size();

抽象方法。返回键值对数量。

isEmpty

public abstract boolean isEmpty();

抽象方法。判断此字典是否为空。

keys

public abstract Enumeration<K> keys();

抽象方法。返回覆盖所有键的枚举器。

elements

public abstract Enumeration<V> elements();

抽象方法。返回覆盖所有值的枚举器。

get

public abstract V get(Object key);

抽象方法。返回键key对应的值。若无对应值,返回空。若key为空,则抛出NullPointerException异常。

put

public abstract V put(K key, V value);

抽象方法。设置键key对应的值为value,返回原对应值。若无原对应值,返回空。若keyvalue为空,则抛出NullPointerException异常。

remove

public abstract V remove(Object key);

抽象方法。移除键为key的键值对,返回原对应值。若key为空,则抛出NullPointerException异常。


总结

新人源码理解,望大家多多指点。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值