首页 > 数据库 >Redis进阶 Lua函数

Redis进阶 Lua函数

时间:2023-12-25 23:11:39浏览次数:37  
标签:square 进阶 Redis Lua 参数 unpack 函数

1.可以直接声明一个局部变量来接收函数,也可以直接简写

local square=function(i)
  return i*i
end

简写:
local function square(i)
  return i*i
end

 

2.当调用函数时,参数是一一对应的,如果多了参数,则会忽略,少则会将对应位置的参数赋值为nil

 

3.如果想要实现可变参数个数,也就是参数个数可以自定义,可以直接在声明函数的时候将参数设置成... 。

以下实例实现了输出三个参数平方的函数

 这里函数的参数是... 。表明参数是可变的,然后获取参数之后将它们放入一个表类型的数据args。遍历求值之后替换原表类型里面的值,之后使用

table.unpack返回元素值。之后使用的是a,b,c三个变量来接收的结果。

注意:在Lua 5.2版本之前,使用的是unpack函数,但由于我是用的是5.3版本,所以此处改为table.unpack。

 

标签:square,进阶,Redis,Lua,参数,unpack,函数
From: https://www.cnblogs.com/AduBlog/p/17927175.html

相关文章

  • 美团面试:ES+Redis+MySQL高可用,如何实现?
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......
  • Ubuntu上安装、使用Redis的详细教程
    sudoapt-getupdatesudoapt-getinstallredis启动方式二systemctlstartredis-server启动方式三serviceredis-serverstart重启redisserviceredis-serverrestart关闭redisserviceredis-serverstop查看redis状态serviceredis-serverstatus4、在宿主机连接redis根据以......
  • aioredis
    importasyncioimportaioredisfromconfig.env_configimportREDIS_URLclassRedisClient:def__init__(self,url,decode_responses=True,max_connections=30):self.url=urlself.decode_responses=decode_responsesself.max_c......
  • Java技术得这样进阶,天天CRUD就完蛋了
    Java天天CRUD,技术没提高怎么办?技术进阶得这么搞,才能进阶为高级开发和架构师?资料地址:自学精灵-IT技术星球(也可以百度搜:自学精灵)。首先点明,只写业务代码是无法成长技术的。提升技术的两个方法是:有技术大佬带有技术大佬的资料本文介绍靠谱的技术进阶资料,让你比其他人更有竞争力!本文......
  • Redis发布订阅
    Redis的发布订阅(Pub/Sub)是一种消息传递模式,允许消息的发布者(publisher)将消息发送给订阅者(subscriber)。基本概念:发布者(Publisher):发布消息的客户端。订阅者(Subscriber):接收并处理发布者发送的消息的客户端。频道(Channel):消息被发布到的特定通道。发布者将消息发布到指定频道,接受者从频......
  • Redis分布式锁
    1.分布式锁的方案分类方案原理优点缺点基于数据库mysql数据库表的唯一索引1.表创建唯一索引2.加锁:执行insert语句,成功则加锁成功,失败则加锁失败3.解锁:执行delete语句完全利用DB实现,实现简单1.锁无超时自动失效机制,有死锁风险2.不支持锁冲入,不支持阻塞等待3.操作数据......
  • 在arm架构的银河麒麟系统部署Redis
    以下是在arm架构的银河麒麟系统上部署Redis的详细步骤:1.创建文件夹首先,在合适的位置创建必要的文件夹。在本例中,我们将创建/opt/redis和/usr/src/redis两个文件夹。mkdir/opt/redismkdir/usr/src/redis2.准备Redis及其依赖库移动redis-6.2.12.tar.gz到/usr/src/redis......
  • Java技术得这样进阶,天天CRUD就完蛋了
    ​简介Java天天CRUD,技术没提高怎么办?技术进阶得这么搞,才能进阶为高级开发和架构师!资料地址:自学精灵-IT技术星球(也可以百度搜:自学精灵)。首先点明,只写业务代码是无法成长技术的。提升技术的两个方法是:有技术大佬带有技术大佬的资料本文介绍靠谱的技术进阶资料,让你比其他人......
  • Redis分布式锁实现方案
    2023.12.25 今天和宝宝复盘吵架,宝宝明明错了还不承认,希望她以后能有长进。 Redis的几种数据类型String最多存储512M数据List setSortedSet有序集合Hashs哈希 Redis的几种内存淘汰策略noeviction内存满了就报错,并执行扩充可用内存命令LRU 回收最少使用的键......
  • linux进阶(一)
    1、数据库----跨服务器传输文件scproot@ip:/oafilesystembackup/oadbbak/db-20230512040001-expdp.dmp/oadbbak----单表恢复impdpquery/密码@ecologydirectory=ecologydumpfile=db-20230512040001-expdp.dmptables=ecology.uf_cw_gzb_cwignore=yremap_schema=ecology:que......