栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

七天玩转Redis | 打卡第2天 Redis五大数据类型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

七天玩转Redis | 打卡第2天 Redis五大数据类型

数据类型简介

Java中的数据类型包括:基本数据类型和引用数据类型,其中基本数据类型包括:byte、short、int、long、double、float、char、boolean八种,而引用数据类型则是另外三种,分别是类、接口和数组!注意是没有string类型的!
Redis中有五大数据类型,分别是String、List、Set、Hash和Zset。

1.string类型:

Redis中给string类型的数据设置指定key的方法就是最基本的设置key-value的方法。
语法:SET key value,key为索引,value为对应的值。
获取指定key的值就是GET key,key为要获取的值对应的索引。
如设置索引为k3,值为v3的键值对数据
在获取刚才的索引k3值为v3的数据,值存在,则会返回值,不存在则会返回nil。

书接上次,给索引mykey里设置了一个mzldustu的值。
以下进行了:
GETRANGE截取字符串子串操作。
MGET获取多个key对应值操作()。
STRLEN返回字符串长度操作。
MSET 设置一个或多个键值对操作。
MSETNX设置一个或多个键值对操作(但是这个只能在key不存在的情况下进行操作,成功返回1,失败返回0)。
INCR操作所存储的数值加一。
INCRBY操作所存储的数值加指定值。
DECR操作指定存储数值减一。
DECRBY操作指定存储数值减去任意值。
APPEND操作字符串追加,如图是在mykey2的值value1后追加了hello。

2.Hash类型:

Hash类型是一个String类型的field(字段)和value(值)的映射表,它的作用是可以用来存储我们定义的数据对象,所以简单来说它是一个key下面存储了多个key-value的情况,下面是一个简单的Hash的结构图:

以下进行的操作有:
HMSET设置一个hash数据name:mzldustu sex:1 age:20
HGETALL获取指定哈希表中所有的字段和值
HGET获取存储在哈希表中指定字段的值
HDEL删除一个或多个哈希表字段
HLEN获取哈希表中字段的数量
HKEYS获取哈希表中的所有字段
HVALS获取哈希表中所有的值

3.List类型:

Redis中的列表存储的是一个一个的字符串,按照插入的顺序进行排序,在Redis中可以指定是在列表的头部或者尾部插入。所以也可以把它看作是一个linkedList结构。
以下进行了如下操作:
在Redis中向列表中插入数据的命令是LPUSH,返回值是插入的数据的个数,命令中的L表示left,意思是在表头插入。
在Redis中向列表尾部插入数据的命令是RPUSH,命令中的R表示right,返回值是插入的数据的个数,意思是在列表尾部插入。
如下图操作完之后,mylist列表中的元素排列应该为:
[test3,test2,test1,test4,test5,test6]
LLEN操作获取mylist的长度
LINDEX通过索引获取列表中的元素
LPOP移除并获取列表第一个元素
RPOP移除并获取列表最后一个元素

4.Set集合:

Redis中的Set集合和Java中的Set集合所表示的含义一样,都是无序集合,且集合中的元素是唯一的,不可重复的。
以下进行的操作:
SADD向集合中添加一个或多个成员
SCARD获取集合中成员的个数
SDIFF命令的作用是返回第一个集合相对于其他集合的差异,如现在新建一个集合myset2,并在其中插入一些数据“stest3”、“aaa”、“bbb”,相对于myset2而言,myset1多出了“stest1”和“stest2”
SINTER命令可以返回所给定的两个或多个集合的交集,如新建一个集合myset3,其中的成员为“stest1”、“stest2”、“ccc”,找则myset、myset2、myset3直接的交集为null,而myset和myset2之间的交集是“stest3”
SMEMBERS返回集合中的所有元素。

5.ZSet类似:

ZSet集合与Set集合类似,也是不允许成员重复的,但是需要注意的是Set集合中的成员是无序排练的,而ZSet集合中的成员是有序排列的,
因为ZSet集合中的每一个元素都会关联一个double类型的分数(可以理解为权重),redis也正是通过分数来为集合中的成员进行从小到大排序的。所以有序集合的成员是虽然唯一的,但是分数(score)却是可以重复的。
以下进行操作:
ZADD命令,我们可以向有序集合中插入一个或多个成员,但是如果该成员已经存在的话,那么就会更新该成员所对应的分数,如我们要想myzset集合中插入score为1,member为ztest1,score为3,member为ztest3,score为4,member为ztest4的三个成员变量
ZCARD命令可以获得指定有序集合的成员变量个数,如我们查询有序集合myzset中成员变量的个数
ZCOUNT查询指定区间内有多少个成员变量
ZRANGEBYSCORE根据分数返回有序集合指定区间内的成员
ZREM移除有序集合中的一个或多个元素,如要移除myzset集合中的成员变量ztest4

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/710669.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号