《Redis应用实例》Java实现(28):栈

栈是后进先出队列,也是一种非常常见的数据结构。

常被用来实现撤销功能。

本例演示了如何在用redis来实现栈

java 复制代码
package com.foxbill.redisinaction;

import redis.clients.jedis.Jedis;

/**
 * 栈
 */
public class Chapter28 {
    static private String KEY_QUEUE = "Chapter28:queue";

    static public void start(Jedis jedis) {
        cleanData(jedis);

        for (int i = 0; i < 5; i++) {
            add(jedis,"item:"+String.valueOf(i));
        }

        String item = pop(jedis);
        System.out.printf("item:%s\n", item);
        item = pop(jedis);
        System.out.printf("item:%s\n", item);
    }

    //清除数据
    private static void cleanData(Jedis jedis) {
        jedis.del(KEY_QUEUE);
    }

    private static void add(Jedis jedis,String item) {
        jedis.rpush(KEY_QUEUE, item);
    }

    private static String pop(Jedis jedis) {
        String item = jedis.rpop(KEY_QUEUE);
        return item;
    }

}
相关推荐
无心水1 小时前
【分布式利器:腾讯TSF】10、TSF故障排查与架构评审实战:Java架构师从救火到防火的生产哲学
java·人工智能·分布式·架构·限流·分布式利器·腾讯tsf
Boilermaker19928 小时前
[Java 并发编程] Synchronized 锁升级
java·开发语言
Cherry的跨界思维8 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
alonewolf_999 小时前
JDK17新特性全面解析:从语法革新到模块化革命
java·开发语言·jvm·jdk
一嘴一个橘子9 小时前
spring-aop 的 基础使用(啥是增强类、切点、切面)- 2
java
sheji34169 小时前
【开题答辩全过程】以 中医药文化科普系统为例,包含答辩的问题和答案
java
恋爱绝缘体19 小时前
2020重学C++重构你的C++知识体系
java·开发语言·c++·算法·junit
wszy180910 小时前
新文章标签:让用户一眼发现最新内容
java·python·harmonyos
wszy180910 小时前
顶部标题栏的设计与实现:让用户知道自己在哪
java·python·react native·harmonyos
程序员小假11 小时前
我们来说一下无锁队列 Disruptor 的原理
java·后端