Lua4.0 實現#操作,獲取table大小

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章