Lua实现Map
通过Lua中自带的table来实现一个Map,可以根据键值来插入移除取值
map = {}
local this = map
function this:new()
o = {}
setmetatable(o, self)
self.__index = self
self.count =
return o
end
function this:insert(k, v)
if nil == self[k] then
self[k] = v
self.count = self.count +
end
end
function this:remove(k)
if nil ~= self[k] then
self[k] = nil
if self.count > then
self.count = self.count -
end
end
end
function this:getpair(k)
local value = nil
if nil ~= self[k] then
value = self[k]
--print("getpair")
end
return value
end
function this:clear()
for k, _ in pairs(self) do
if nil ~= self[k] then
self[k] = nil
end
end
self.count =
end
return map
Lua实现Map的更多相关文章
- 【OpenWRT之旅】如何自定义一个配置文件的设置界面
作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1. 引言 OpenWRT中采用LuCI作为它的Web interface界面框架,采用Lua语言.在本文中将以 ...
- openwrt web管理luci界面修改
转自:http://blog.csdn.net/user_920/article/details/8504979 以前都没听过openwrt和luci,只接触过简单的php语言.由于工作原因,要修改下 ...
- openwrt开源系统LUCI配置界面
转自:http://www.right.com.cn/forum/thread-131035-1-1.html 本人菜鸟,最近在学习这方面的知识,在参考资料的基础上总结如下内容.这篇文章针对如何对op ...
- 【架构】Nginx如何设置X-Request-ID请求头,记录请求时间:毫秒?
Nginx is awesome, but it’s missing some common features. For instance, a common thing to add to acce ...
- cartographer和ROS的坐标系关系
参考定义见:backpack_3d.lua Local map frame是一次slam过程中的原点.但是现在cartographer支持Incremental mapping.global m ...
- 怎么调试lua性能
怎么调试lua性能 我们的游戏使用的是Cocos2dx-lua 3.9的项目,最近发现我们的游戏.运行比较缓慢.想做一次性能优化了.其实主要分为GPU.CPU的分别优化.GPU部分的优化.网上有很多优 ...
- 使用Ldoc给Lua生成文档
Ldoc介绍 LDoc是一个Lua的文档生成工具,过去,比较常用的Lua生成文档的工具是LuaDoc,可惜作者自从2008年之后就再也没有发布过新的版本了,说明作者基本上已经放弃维护了.而LDoc则是 ...
- lua解析脚本过程中的关键数据结构介绍
在这一篇文章中我先来介绍一下lua解析一个脚本文件时要用到的一些关键的数据结构,为将来的一系列代码分析打下一个良好的基础.在整个过程中,比较重要的几个源码文件分别是:llex.h,lparse.h.l ...
- #研发解决方案#基于Apriori算法的Nginx+Lua+ELK异常流量拦截方案
郑昀 基于杨海波的设计文档 创建于2015/8/13 最后更新于2015/8/25 关键词:异常流量.rate limiting.Nginx.Apriori.频繁项集.先验算法.Lua.ELK 本文档 ...
随机推荐
- ThreadLocal之我所见
网上有很多关于ThreadLocal的文章,大部分都提到了多线程之间共享资源的问题.其实ThreadLocal和多线程之间一点关系都没有.如果有,我怕是它的名字改成ThreadShare是不是更合适呢 ...
- Linux系统启动过程(通俗易懂)
前言: Linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布.在加上用户空间的应用程序之后,成为Linux操作系统.Linux是自由软件 ...
- java第7次作业
interface Pet{ public String getName() ; public String getColor() ; public int getAge() ; } class Ca ...
- 记一次用express手写博客
1.req.session时一直是undefined 解决方法: // sesssion应用的配置 app.use(session({ secret:'blog', cookie: ('name', ...
- C#连接Access数据库
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=XX/XXX ...
- 实时输出topk最频繁变动的股价
网上看到了一道关于bloomburg的面试题,follow 评论的思路 自己试着写了一个HashHeap的实现. 基本思路是维护一个大小为K的最小堆,里面是topK股价变动的公司ID(假设ID是Int ...
- Spring事务操作介绍
Spring的特色之一,简单而强大的事务管理功能,包括编程式事务和声明式事务. 1. Spring中涉及到事务管理的API有100多个,核心的只有三个: TransactionDefinition.P ...
- 文件防删除保护(miniifiter)
0x01 思路(原理) 驱动层文件保护的思路是通过minifilter过滤文件删除相关的IRP,并将目标文件与被保护文件相比较,命中保护规则的话返回STATUS_ACCESS_DENIED拒绝访问:也 ...
- 试试Markdown哈
目录 一级标题 二级标题 三级标题 二级标题? 我擦了? 这什么语法.文字下面加-号,实现二级标题? 看看是几级标题 还真的是二级标题. ...... # 看来四个空格是个,嗯,默认的东西 ??中间是 ...
- springboot快速开发(简单web)
这是一个springboot基础配置文件介绍的demo.只涉及到 控制层与前端的简单交互,用于验证代码的畅通. spring-boot pom.xml解释 <?xml version=&quo ...