表操作-生成一个随机数不重复的表

[复制链接]
查看1587 | 回复2 | 2021-8-24 22:03:32 | 显示全部楼层 |阅读模式
  1. function randomTable(num)
  2.         -- 生成一个随机数字的且不重复的表格
  3.     -- randomTable(数字)
  4.     -- 参数越多 生成的表随机显示越好
  5.         tab = {}                        -- 创建一个空表
  6.         randomtable = {}        -- 创建一个空表
  7.     if type(num) ~= 'number'then
  8.             return print('参数类型必须为:数字')
  9.     end
  10.         for i=1,num do                -- 在tab表里添加元素
  11.                 table.insert(tab,i)
  12.         end
  13.         for i=1,#tab do                -- 通过随机数删除tab表里的元素 赋值给 randomtable 表
  14.                 randomtable[i]= table.remove(tab,math.random(1,#tab))
  15.         end
  16.         return randomtable
  17. end
  18. -- 调用测试
  19. print(randomTable(10))
复制代码
代码图片及运行结果:
1.png


回复

使用道具 举报

xywl | 2021-8-24 23:51:41 | 显示全部楼层
继续分享
回复

使用道具 举报

aa627816231 | 2021-11-25 22:01:18 | 显示全部楼层
谢谢大佬分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则