redis(9):Redis 5种数据类型vs java类型

待我称王封你为后i 2022-10-28 03:48 444阅读 0赞

已经看完redis的5种数据结构(在redis 5之后,新增stream数据结构),作为java程序员,总想把redis的数据结构和java里的类型进行对比,遂成本文

一、数据结构对比






























redis数据结构 java数据结构
String Map<String,String>
Hash Map<String,Map<String,String>>
List Map<String,List< String >> 里面list 有序链表
Set Map < String , Set< String >> 里面set元素不能重复且无序
zset Map < String , Sort Set< String >> 里面 Sort Set 元素有序且不能重复

reids数据存储的结构统一都是 Key/Value 结果,而Key统一都是String类型的,即Key针对所有的Redis数据类型都是必须的,而通常所说的Redis的数据类型,指代的都是Value所存储的类型。

1.String字符串类型-类比Java中String类型

在这里插入图片描述

  • 相比Java中的类型,可以这样理解 Map ,Key是String类型的,Value是Java中所有的基本类型都可以。
  • 在Java中String类型的数字是可以和int,long,folat等类型相互转换的,所以在redis中String类型有时也可以作为Java中的整数或者浮点数类型使用

2.Hash散列类型-类比Java中的HashMap类型

在这里插入图片描述

  • 相比Java中的类型,可以这样理解 Map> Key是外层Map的键,Value是外层Map的值;而在redis中Hash散列类型中的field是里层Map的键,redis中散列类型中真正的value是里层Map的值

3.List列表类型-类比Java中List类型

在这里插入图片描述

  • 相比Java中的类型,可以这样理解 Map Key是String类型的,Value是Java中List类型的。特点也和Java中的List类型差不多,有序的,可重复的

4.Set集合类型-即Value(member)所存储的类型,类比Java中的HashSet类型

在这里插入图片描述

  • 相比Java中的类型,可以这样理解 Map Key是String类型的,Value是Java中Set类型的。特点也和Java中的Set类型差不多,无序的,不可重复的

5.有序集合类型-即Value(member)所存储的类型,类比Java中的TreeSet类型

在这里插入图片描述

  • 特点:有序的,不可重复的,即member是不可重复的,使用score维护成员的顺序,score是可以重复的
  • zadd命令如果添加已经存在的member对象,则使用新的score值更新member旧的score值

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,444人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Redis5基本数据类型

    1.Redis五种数据结构: 1. Strings(字符串类型):存储任何类型的字符串、整数或浮点数。 2. Hashes(哈希类型):以键值对的形式存储多个属性和属

    相关 Redis数据类型

    数据类型 包括五种String、List、Hash、Set、Zset String 字符串是二进制安全的,可以包含任何数据 比如,图片或者序列化的对象 一个字

    相关 Redis常用的5数据类型

    本文重要介绍,redis的五种数据类型,以及各应用场景 字符串string: 字符串类型是Redis中最为基础的数据存储类型,是一个由字节组成的序列,他在Redis中是

    相关 Redis--6数据类型

    Redis的6种数据类型 Redis 是一种基于内存的数据库,并且提供一定的持久化功能,它是一种键值(key-value)数据库,使用 key 作为索引找到当前缓存的数据