Lua4.0 实现#操作,获取table大小

来源:互联网 发布:linux dns配置文件详解 编辑:程序博客网 时间:2024/06/06 17:53
lua4.0没有实现#操作,#操作是lua5.0以后实现的,现在有个老项目要用lua4.0,则在网上找到了下述方法替代
  1. -- table.getn(tableName) 得到一个table的大小,等同于操作符#  
  2. -- 要注意的是:该table的key必须是有序的,索引是从1开始的。  
  3.   
  4.   
  5. --例如有序的  
  6. local xiang = {10,22,34,42,51}  
  7. print("xiang length ==",table.getn(xiang)) --结果为:[LUA-print] xiang length ==    5  
  8.   
  9.   
  10. --例如无序的  
  11. local song = {s=10,h=22,x=34,m=42,n=51}  
  12. print("song length ==",table.getn(song)) --结果为:[LUA-print] song length ==    0  
  13.   
  14.   
  15. --对于无序的我们可以这样做  
  16. local count = 0  
  17. for k,v in pairs(song) do  
  18.     count = count + 1  
  19. end  
  20. print("song length ==",count) --结果为: [LUA-print] song length == 5  


参考:http://blog.csdn.net/song_hui_xiang

0 0
原创粉丝点击