对lua表中数据按一定格式处理,循环
- function putStartCard(handCard)
- function dataDeal(array,a,b,c)
- cclog("进入datadeal====================================")
- for i=,#array do
- cclog("array[%d]======%d",i,array[i])
- end
- local result = {}
- if #array >= then
- for i=,#array do
- if a == array[i] then
- for j=i+, #array do
- if b == array[j] then
- for k=j+,#array do
- if c == array[k] then
- table.insert(result,array[i])
- table.insert(result,array[j])
- table.insert(result,array[k])
- cclog("%d,%d,%d",array[i],array[j],array[k])
- table.remove(array,k)
- table.remove(array,j)
- table.remove(array,i)
- cclog("找到2,7,10===============")
- cclog("result===%d%d%d",result[],result[],result[])
- for ii=,#array do
- cclog("array[%d]=======%d",ii,array[ii])
- end
- return result
- end
- end
- end
- end
- end
- end
- end
- cclog("没找到2,7==============")
- return result
- end
- local unUseless =
- local i = nil
- local data = {}
- for j=, do
- data[j] = {}
- end
- for i=, do
- for j=, -i do
- if handCard[j] > handCard[j+] then
- handCard[j],handCard[j+] = handCard[j+],handCard[j]
- end
- end
- end
- cclog("排序后的数据")
- for i=, do
- cclog("handCard[%d]===============%d",i,handCard[i])
- end
- i =
- repeat
- if handCard[i] == handCard[i+] and handCard[i] == handCard[i+] and
- handCard[i] == handCard[i+] then
- cclog("进入data1")
- for j=, do
- table.insert(data[],handCard[i])
- end
- cclog("data[i]====%d,%d,%d,%d",data[][],data[][],data[][],data[][])
- i = i+
- elseif handCard[i] == handCard[i+] and handCard[i] == handCard[i+] then
- cclog("进入data2")
- for j=, do
- table.insert(data[],handCard[i])
- end
- i = i+
- elseif handCard[i] == handCard[i+] then
- cclog("进入data3")
- for j=, do
- table.insert(data[],handCard[i])
- end
- i = i+
- else
- cclog("进入data4")
- table.insert(data[],handCard[i])
- i = i+
- end
- until(i>)
- cclog("第二次处理后的数据")
- for i=, do
- for j=,#data[i] do
- cclog("data[%d][%d]=====%d",i,j,data[i][j])
- end
- end
- ---------------------------------------------------------------------
- --从表中选出,想要的三个数据
- function dataInsert(table1,table2)
- for i=, #table2 do
- table.insert(table1,table2[i])
- end
- end
- cclog("开始查找2710===========")
- dataInsert(data[],dataDeal(data[],,,))
- dataInsert(data[],dataDeal(data[],,,))
- dataInsert(data[],dataDeal(data[],,,))
- for i=, do
- dataInsert(data[],dataDeal(data[],i,i+,i+))
- end
- return data
- end
- --用于测试
- handCard = {,,,,,,,,,,,,,,,,,,,}
- local aa = putStartCard(handCard)
- cclog("aaaaaaaaaaaaaaaaaaaaaaaaaaaa")
- for i=, do
- for j=,#aa[i] do
- cclog("aa[%d][%d]=======%d",i,j,aa[i][j])
- end
- end
- cclog("aaaaaaaaaaaaaaaaaaaaaaaaaaaa")
将表handCard中数据分为四组4个(相同的数据),3个(同样的数据and2,7,10and顺子),两个(相同的数据),一个(里边有很多数据,但没有重复的,没有顺子)
注意:1.表中数据移除,不可用{}和nil,移除时,表中数据会左移
2.表中数据插入,插入的是单个数据
3.repeat循环不可以更改为for循环,for i=1,10 do end 中i只是指定循环次数
例如:for i=1, 10 do
i = i+3
cclog("%d",i)
end
输出:4,5,6,7,8,9,10,11,12,13
上边for循环中的i值失效
4.lua中没有continue导致程序循环次数过多
对lua表中数据按一定格式处理,循环的更多相关文章
- Oracle中使用游标转换数据表中指定字段内容格式(拼音转数字)
应用场景:将数据表TB_USER中字段NNDP的内容中为[sannanyinv]转换为[3男1女] 主要脚本:一个游标脚本+分割字符串函数+拼音转数字脚本 操作步骤如下: 1.创建类型 create ...
- MySQL查询数据表中数据记录(包括多表查询)
MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...
- mysql--对行(表中数据)的增删改查
一.插入数据(增加)insert 1.插入数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); #指定字段来插入数据,插 ...
- jmeter随笔(1)-在csv中数据为json格式的数据不完整
昨天同事在使用jmeter遇到问题,在csv中数据为json格式的数据,在jmeter中无法完整的取值,小怪我看了下,给出解决办法,其实很简单,我们一起看看,看完了记得分享给你的朋友. 问题现象: 1 ...
- Oracle 取两个表中数据的交集并集差异集合
Oracle 取两个表中数据的交集 关键字: Oracle 取两个表中数据的交集 INTERSECT Oracle 作为一个大型的关系数据库,日常应用中往往需要提取两个表的交集数据 例如现有如下表,要 ...
- Mysql清空表(truncate)与删除表中数据(delete)的区别
来源:http://blog.is36.com/mysql_difference_of_truncate_and_delete/ 为某基于wordpress搭建的博客长久未除草,某天升级的时候发现已经 ...
- db2删除表中数据
DB2数据库系统建表后,难免会有将表中数据清空的需求,本文将为您介绍DB2数据库中四种数据删除的方法,供您参考,您可以根据实际情况来进行选择,希望能对有所帮助. 1. 使用 DELETE 语句,即: ...
- mysql利用navicat导出表结构和表中数据
LZ在网上搜索了要如何导出mysql的表结构和表中数据,发现有的方法不好用 记录一下好用的方式: 用navicat打开DB链接后,点击数据库,右击选择转储SQL文件,然后选择结构和数据: 之后弹出新的 ...
- pl/sql中误删表中数据并提交恢复办法
最近在操作表中数据时,删除了表中数据,但是又想恢复,后来查到了官方的一篇文档,发现还蛮有用的,如下: 在pl/sql中运行,select * from A as of TIMESTAMP to_tim ...
随机推荐
- 在CYGWIN下编译和运行软件Bundler ,以及PMVS,CMVS的编译与使用
本人按照 http://blog.csdn.net/zzzblog/article/details/17166869 http://oliver.zheng.blog.163.com/blog/sta ...
- DirectShow学习笔记总结
DirectShow是微软公司在ActiveMovie和Video for Windows的基础上推出的新一代基于COM(Component Object Model)的流媒体处理的开发包,9.0之前 ...
- Django学习-9-ORM多对多操作
创建多对多: 方式一:自定义关系表 class Host(models.Model): nid = mo ...
- Nethogs - 网络流量监控工具
命令iftop来检查带宽使用情况.netstat用来查看接口统计报告.还有其他的一些工具Bandwidthd.Speedometer.Nethogs.Darkstat.jnettop.ifstat.i ...
- WKWebView 加载本地HTML显示不出网页问题,这点你注意了吗?-------完美显示
1.首先,WKWebView的引入和创建,我这里就不做阐述,我要说的,就是解决别人不能给您解决的问题 2.WKWebView 加载本地HTML,也就是两三句代码 是吧?作为读者的您肯定也知道,也实现 ...
- Redis总结(七)Redis运维常用命令
redis 服务器端命令 redis 127.0.0.1:6380> time ,显示服务器时间 , 时间戳(秒), 微秒数 1) "1375270361" 2) &quo ...
- layer与iframe 间值的相互传递
在A页添加 <input id="handle_status" value="" hidden="hidden"> jq代码 l ...
- 【BZOJ4556】字符串(后缀数组,主席树)
[BZOJ4556]字符串(后缀数组,主席树) 题面 BZOJ 题解 注意看题: 要求的是\([a,b]\)的子串和[c,d]的\(lcp\)的最大值 先来一下暴力吧 求出\(SA\)之后 暴力枚举\ ...
- 用vmware workstation制作cloudstack(kvm)镜像及问题解决办法
说明1:vmware workstation镜像是vmdk格式 说明2:cloudstack配置文件目录:/run/libvirt/qemu/ kvm配置文件目录:/etc/libvirt/q ...
- Spring Boot Security 基于角色的访问控制
@Override protected void configure(HttpSecurity http) throws Exception { //如果配置为需要登录 if (needLogin) ...