首页 > 数据库 >redis list数据结构操作学习

redis list数据结构操作学习

时间:2024-04-22 10:38:27浏览次数:29  
标签:rpop mylist list 元素 redis lrange integer 数据结构 rpush

转自:https://zhuanlan.zhihu.com/p/76578547

1.插入元素

> rpush mylist A   # 从右侧插入
(integer) 1
> rpush mylist B
(integer) 2
> lpush mylist first
(integer) 3
> lrange mylist 0 -1    // 这里使用 0 -1 表示显示所有元素,注意是:0 空格 -1,0 代表第一个元素,-1 代表最后一个元素
1) "first"
2) "A"
3) "B"

> rpush mylist 1 2 3 4 5 "foo bar"  # 插入多个
(integer) 9
> lrange mylist 0 -1   // 从左到右查看元素
1) "first"
2) "A"
3) "B"
4) "1"
5) "2"
6) "3"
7) "4"
8) "5"
9) "foo bar"

2.pop元素

> rpush mylist a b c
(integer) 3
> rpop mylist  #从右到左依次pop元素
"c"
> rpop mylist
"b"
> rpop mylist
"a"

> rpop mylist   #空list
(nil)

 

3.设置上限 

> rpush mylist 1 2 3 4 5
(integer) 5
> ltrim mylist 0 2  # 只从索引 0 到 2 中获取 List 元素,其他所有内容都将被丢弃
OK
> lrange mylist 0 -1
1) "1"
2) "2"
3) "3"

 TODO

 

 

4.应用场景

请假设您的主页显示在照片是共享社交网络中发布的最新照片,并且您希望加快访问速度。

  • 每次用户发布新照片时,我们都会将其 ID 添加到带有 LPUSH 的 List 中。
  • 当用户访问主页时,我们使用LRANGE 0 9 来获取最新的 10 张照片。

 

标签:rpop,mylist,list,元素,redis,lrange,integer,数据结构,rpush
From: https://www.cnblogs.com/BlueBlueSea/p/18150122

相关文章

  • 入门 Redis 基础知识
    目录1.Redis简介与特点1.1.Redis是什么?1.2.为什么选择Redis?2.Redis数据结构与基本操作2.1.字符串(Strings)2.2.列表(Lists)2.3.集合(Sets)2.4.哈希表(Hashes)2.5.有序集合(SortedSets)2.6.基本操作示例3.Redis安装与配置3.1.安装Redis3.2.配置Redis 1.Redi......
  • QML::ListView
    ListView1.0ListView基础使用方法//ListView01.qml1、通过Component定义Delegate2、通过ListModel定义mode,通过ListElement定义数据类型3、定义ListView,通过delegate和model属性绑定mode和DelegateimportQtQuick2.2importQtQuick.Controls1.2importQtQuick.Layout......
  • MySQL-06.索引的数据结构
    1.为什么使用索引索引是存储引擎用于快速找到数据记录的一种数据结构,就好比一本书的目录部分,通过目录中找到对应文章的页码,便可快速定位到需要的文章。MySQL中的索引也是一样的道理,进行数据查找时,首先查看查询条件是否命中某条索引,符合则通过索引查找相关数据,如果不符合则需要全......
  • list容器
    list是一种双向链表。list的设计更加复杂一点,好处是每次插入或删除一个元素,就配置或释放一个元素,list对于空间的运用有绝对的精准,一点也不浪费。而且对于任何位置的元素插入或删除,list永远是常数空间。list源码分成了两个部分,一个部分是list结构,另一部分是list节点的结......
  • windows版redis使用bat文件启动闪退
    在redis中使用批处理命令。建立bat后缀的文件。里面内容为:titleredis-6379redis-server.exeredis.windows.conf但是双击执行bat文件,redis出现窗口闪退。解决方案:检查任务管理器中redis是否有启动。有则关闭,重新双击bat文件启动。否则1.Windows+r进入cmd。2.cd进入到re......
  • 店铺营业状态开发+redis入门
      Redis也是数据库,也是用来存储数据的,有五种常用数据,redis是把数据存储到内存中,而mysql是把数据以数据文件的方式存到磁盘上  热点数据:在某个特定时间点,会有大量用户访问他们redis数据库是对MySQL数据库的补充 使用此命令启动redis然后通过客户端连接本地redis......
  • 【Redis】Windows下安装Redis
    我们已经能够在Linux下安装Redis,接下来我们可以学习在Windows下安装和使用Redis。下载源码并解压下载地址:https://github.com/tporadowski/redis/releases。Redis支持32位和64位。这个需要根据你系统平台的实际情况选择,这里我们下载Redis-x64-xxx.zip压缩包到C盘,解压......
  • Redis介绍、使用、数据结构和集群模式总结
    Redis(RemoteDictionaryServer)是一个开源的,基于内存的数据结构存储系统,它支持多种数据结构,如字符串(String)、列表(List)、集合(Set)、有序集合(SortedSet)、散列(Hash)等。Redis不仅可以用作数据库、缓存和消息代理,还可以通过复制、持久化、高可用性和分区提供强大的数据保障。以下是关于......
  • (数据结构代码,总结,自我思考)=> { return 个人学习笔记; } 【To be continued~】
    俗话说“学而不思则罔”,是时候复习和整理一下自己先前的学习历程了!Chapter-One《BinarySearch》publicstaticintbinarySearch(int[]a,inttarget){inti=0,j=a.length-1;while(i<=j){intm=(i+j)>>>1;//求......
  • Java 集合进阶使用(List Map Set)
    CollectionCollection是其子集的父类,所以可以使用多态的规矩,比如:创建一个ArrayList对象,用Collection接收Collection<Integer>collection=newArrayList<>();注意:Collection为接口,不能直接创建对象,但可以利用其子类,使用Collection方法,就如上方代码一样Collection......