hutool.cache.lru_cache

Module Contents

Classes

LRUCache

LRU(最近最少使用)缓存实现。

API

class hutool.cache.lru_cache.LRUCache(capacity: int = 16)

LRU(最近最少使用)缓存实现。

当缓存满时,最近最少使用的元素会被淘汰。 每次get操作会将元素移至最新位置。

Initialization

初始化LRU缓存。

参数:

capacity – 缓存最大容量,默认16

get(key: Any, default: Any = None) Any

获取缓存值,并将该元素移至最新位置。

参数:
  • key – 缓存键

  • default – 键不存在时返回的默认值

返回:

缓存值,不存在时返回默认值

put(key: Any, value: Any) None

放入缓存。如果键已存在则更新并移至最新位置; 如果缓存已满,淘汰最近最少使用的元素。

参数:
  • key – 缓存键

  • value – 缓存值

remove(key: Any) Any

移除指定键的缓存。

参数:

key – 缓存键

返回:

被移除的值,键不存在时返回None

size() int

获取当前缓存大小。

返回:

当前缓存条目数

capacity() int

获取缓存最大容量。

返回:

缓存最大容量

clear() None

清空所有缓存。

is_full() bool

判断缓存是否已满。

返回:

缓存已满返回True,否则返回False

keys() KeysView

获取所有缓存键,按使用顺序排列。

返回:

缓存键的视图(从最久未使用到最近使用)

__contains__(key: Any) bool

判断键是否存在于缓存中。

参数:

key – 缓存键

返回:

是否存在

__len__() int

返回缓存大小。

返回:

缓存条目数