*Redis ARLEN 命令
ARLEN 返回数组的长度(元素数量)。
*语法
ARLEN key
*参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| key | String | 是 | 数组键名 |
*返回值
- Integer:数组的元素数量
- 0:数组为空或 key 不存在
- Error:key 存储的不是 Array 类型
*时间复杂度
O(1)
*
*示例
*获取数组长度
> ARSET items "a" "b" "c"
OK
> ARLEN items
(integer) 3
*空数组
> ARSET empty
OK
> ARLEN empty
(integer) 0
*不存在的 key
> ARLEN notexist
(integer) 0
*常见错误
| 错误 | 原因 | 解决 |
|---|---|---|
| WRONGTYPE | key 不是 Array 类型 | 确认 key 的数据类型 |
*最佳实践
- 判断数组是否为空的首选方式
- 计算分页参数(页数 = ceil(ARLEN / pageSize))
- 监控数组长度,防止无限制增长导致内存问题
*FAQ
Q1: ARLEN 返回 0 表示什么? A: 可能是数组为空,也可能是 key 不存在。可用 EXISTS key 区分。
Q2: 数组有最大长度限制吗? A: 受可用内存限制,但建议业务层面限制在合理范围(如 10 万)。
Q3: ARLEN 和 LLEN 有什么区别? A: ARLEN 针对 Array 类型;LLEN 针对 List 类型。两者数据结构不同。