企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] # 简介 有序集合 sortedset中存储的成员都有一个附带的分数值,而redis就可以根据分数来对成员进行各种排序 ![](https://box.kancloud.cn/fc15d240d46f850f992d85698189db54_942x450.png) # 命令行 ![](https://box.kancloud.cn/c08ab8ad32fc46878aadd6d27353c672_621x864.png) # 代码 **制作排行榜** ~~~ Jedis jedis = init(); Random random = new Random(); String[] heros = {"易大师", "德邦", "剑姬", "阿卡丽", "金克斯", "提莫", "猴子", "亚索"}; while (true) { int index = random.nextInt(heros.length); //选择一个英雄 String hero = heros[index]; //开始玩游戏 Thread.sleep(1000); //给集合中的该英雄的出场次数加1 //第一次添加的时候,集合不存在,zincrby方法创建,有就把值加1 jedis.zincrby("hero:ccl:phb", 1, hero); System.out.println(hero + "出场了..."); } ~~~ **查看排行榜** ~~~ Jedis jedis = init(); int i = 1; while (true) { //每隔3秒查看一次榜单 Thread.sleep(3000); System.out.println("第" + i + "次查看榜单-----------"); //从redis中查询榜单的前n名 Set<Tuple> tuples = jedis.zrevrangeWithScores("hero:ccl:phb", 0, 4); for (Tuple t : tuples) { System.out.println(t.getElement() + " " + t.getScore()); } i++; System.out.println(""); } ~~~