list转换成string字符串_Redis五大基本数据类型之String

Redis五大基本Value数据结构类型:  String,List,Hash,Set,ZSet

1:String

String 是Redis 里面最简单的一种数据结构。在Redis中,所有的Key都是字符串,存储对象时也是需要进行序列化操作,但是不同的key对应的value则具备不同的数据结构,我们所说的五种不同的数据结构主要指的时value 的数据类型不同

Redis 中的字符串时动态字符串,内部时可以修改的 像Java中的StringBuffer 它采用分配冗余空间的方式来减少内存的频繁分配。在Redis内存结构中 ,一般实际分配的内存会大于需要的内存,当字符串小于1M的时候 ,扩容都是在现有的空间基础上加备,扩容每次扩容1M 空间,最大512M

相关命令:

  • ###set,get, : 使用set命令就是存值 : 使用get命令通过key632f4d7a337a5bb7ce527777fc523afb.png

  • append

:使用 append 命令时 如果key 已经存在则直接在对应的value后进行追加值,否则就会创建新的key41e552ac17109a27491ac811875259e5.png

  • decr

使用 decr命令可以实现对value的减 1 操作 (前提时value是一个数字),如果Value不是数字,就会报错,如果Value不存在 默认值时0 在默认的基础上减一ca07de5bca35c49655602ba497cdadd6.png

  • decrby

:和 decr命令类似 但是可以设置 步长(步长 每次递减多少)3ff068d03963b9480b59ac2282a3565c.png

  • getrange

:getrange 命令可以用来返回key对饮给的Value的子串,类似于Java中 的subString方法 -1: 表示 倒数第一个截至 -2:表示倒数第二个截至 -3:表示倒数第三个截至 ......24ca2abe00f5dd7f52b621847ebe225e.png

  • getset

:getset获取并更新某一个keyfbee14b31d1543d6866bf98ad123637d.png

  • incr

:表示对value自增

  • incrby

:表示对value自增 同事可以设置步长

  • incrbyfloat

和incrby类似,但是自增的步长,可以设置为浮点数bebf6202169705e6ed606f1f3e7f233f.png

  • mget和mset

:批量获取和批量存储26d3932159ac4eb108e180d6ebfb9d3e.png

  • ttl

:使用ttl查看key的有效期 -1:永不过期 -2:过期

  • setex

: 使用setex命令给key同时设置value 也同时设置过期时间(时间单位:S)76f03f26a0d43d7fdc9ed9cd252cbad1.png

  • psetex

和setex类似 知识 过期时间单位不同(时间单位:MS)c8dc7ea7d5c60980419bd50f876c6961.png

  • setnx

默认情况下 set命令会覆盖自己已经存在的key setnx则不会

  • msetnx

批量设置  set命令会覆盖自己已经存在的key setnx则不会c6e59eb2f4c449ecf8179b346417ef7f.png

  • setrange

覆盖一个已经存在key的value。ad9b25ed0cc84dcdf6bf5ff5572f1d9e.png

  • strlen

:查看字符串长度79d6e56f5083cc9616e6b47a40f50676.png

2:String( BIT)

在Redis中,字符串都是以二进制的方式存储的 。而BIT命令就是 对二进制进行操作的。例如:set k1 a  ,a 对应的ASCII码时97 ,97转换成二进制时01100001;

  • getbit

获取key对应的value在offset处于bit值

c6493c123ecb43eff13a54f5cd5d90ac.png
image.png
  • setbit

修改key对应的value在offset处于bit值 例如将  a(01100001) 修改成 b(01100010)888a376966c2ff2ab452d7cb2a211415.png

  • bitcount

统级二进制数据中1个数(不是 转换成 二级制中01100010 0-3 而是value字符串中 0-3 1的个数 )69c16a371780361e0dd2b1c8468de902.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值