Lua 判断表是否为空方法
【1】判断表为空的方法
目前为止,Lua语言中判断table表是否为空有三种方式:
(1)#table,当table为数组时直接返回table表的长度。
(2)当table是字典时,返回table的长度
function table.size(t)
local s = ;
for k, v in pairs(t) do
if v ~= nil then s = s + end
end
return s;
end
(3)next(table),利用next函数进行判断。
local t = {hello = , world = , lucy = }
local k, v
while true do
k, v = next(t, k)
print(k ,v)
if not v then break end
end --[[ 执行结果
hello 1
lucy 3
world 2
nil nil
]] local tt = {} function isEmpty(tbl)
if next(tbl) ~= nil then
print("is not empty.")
else
print("is empty.")
end
end print(isEmpty(t))
print(isEmpty(tt)) --[[ 执行结果
is not empty.
is empty.
]]
Good Good Study, Day Day Up.
顺序 选择 循环 总结
Lua 判断表是否为空方法的更多相关文章
- lua判断表中数据是否连续,0可以代表任何数
最近看到有lua面试题,挺有意思的,一张表中有若干个数,0可以代表任何数 比如有张表{9, 2, 4, 1, 3, 0, 0, 0, 0},按照规则这张表中的四个0可以用来代表5,6,7,8,那么这张 ...
- .net中使用JQuery Ajax判断用户名是否存在的方法
//第一步:新建一个(*.aspx|*.html)Index.aspx页面 添加jquery 1 <html xmlns="http://www.w3.org/1999/xhtml&q ...
- Lua查找表元素过程(元表、__index方法是如何工作的)
近日开始研究Lua,在元表的使用上照猫画虎地搞了两下,实现了“面向对象”,但究其本质却略有不解,后咨询牛哥得解,特此记录. Lua的表本质其实是个类似HashMap的东西,其元素是很多的Key-Val ...
- 【游戏开发】小白学Lua——从Lua查找表元素的过程看元表、元方法
引言 在上篇博客中,我们简单地学习了一下Lua的基本语法.其实在Lua中有一个还有一个叫元表的概念,不得不着重地探讨一下.元表在实际地开发中,也是会被极大程度地所使用到.本篇博客,就让我们从Lua查找 ...
- Sql Server中判断表、列不存在则创建的方法[转]
一.Sql Server中如何判断表中某列是否存在 首先跟大家分享Sql Server中判断表中某列是否存在的两个方法,方法示例如下: 比如说要判断表A中的字段C是否存在两个方法: 第一种方法 ? ...
- [转载]oracle 11g不能导出空表的多种解决方法
原文地址:11g不能导出空表的多种解决方法">oracle 11g不能导出空表的多种解决方法作者:Anlin_Yang ORACLE 11g 用exp命令导出库文件备份时,发现只能导出 ...
- php 判断数组是否为空的几种方法
php数组为空我们可以通过很多php自带函数来实现了,比如count函数,empty函数等都可以判断数组是否为空,下面小编就为各位整理了不少的判断数组是否为空的函数,希望对各位会带来帮助. PHP判断 ...
- java如何判断字符串是否为空的方法
以下是java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s)); 方法二: ...
- Java空字符串与null的区别和判断字符串是否为空的方法
Java空字符串与null的区别: 1.类型null表示的是一个对象的值,而并不是一个字符串.例如声明一个对象的引用,String a = null ;""表示的是一个空字符串,也 ...
随机推荐
- StringDemo
package cn.sasa.demo2; public class StringDemo { public static void main(String[] args) { //String 底 ...
- HTTP协议属于应用层,而SOCKS协议属于传输层
HTTP协议属于应用层,而SOCKS协议属于传输层 SOCKS代理 SOCKS代理能在任何端口,任何协议下运行. SOCKS V4只支持 TCP连接,而SOCKS V5在其基础上增加了安全认证以及对U ...
- matlab中的常用函数
1.将变量a保存到a.txt,每个值中间用tab隔开 dlmwrite('a.txt',a,'\t'); 2.对比两个矩阵是否完全一样 isequal(a,b); %返回logic=1,则完全相同 3 ...
- MySQL crash-safe replication【转载】
本文来自david大神的博客,innodb技术内幕的作者. http://insidemysql.blog.163.com/blog/static/202834042201385190333/ MyS ...
- RN正、反向传值,组件输出
很简单的一个小Demo,绿色的是输出的一个组件,目标把’爱好‘从父组件传给子组件,然后把’name‘从子组件传给父组件 父组件给子组件传值可以使用props,子组件传值给父组件可以使用事件,这里不多说 ...
- 001-mock.js安装使用
一.基础 1.1.安装 //安装 npm install mockjs --save 1.2.使用 // 使用 Mock var Mock = require('mockjs') Mock.mock( ...
- [redis]redis常用
https://redis.io/topics/quickstart $ redis-cli ping PONG redis-server is the Redis Server itself. re ...
- (转)Java静态内部类的实例化问题
最近遇到的一个问题,记录一下. 静态内部类可以被实例化! 1.首先在外部类中的static方法中不能使用普通内部类,因为内部类必须要与外部类建立关联才能使用,可以说是同生共死. 2.我在编码过程中,需 ...
- DL中train\dev\test集
转自:https://blog.csdn.net/l8947943/article/details/80328721 training set:训练集是用来训练模型的.遵循训练集大,开发,测试集小的特 ...
- haproxy json 自定义格式日志 并用rsyslog 收集
haproxy的配置 日志投送: global log 127.0.0.1 local1 info 默认端口是udp514 默认日志: defaults log global log-format \ ...