TC官方合作论坛

 找回密码
 立即注册
查看: 991|回复: 3

[已解决] 关于数组的删除和追加

[复制链接]
发表于 2015-12-16 01:35:02 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 似此星辰非昨夜 于 2015-12-16 01:41 编辑

刚刚接触TC,发现TC里面取数组的值,不是按照下标引用,而是“键名“”。
一般情况下,初始化一个数组,如果不填写键名,会按照顺序 默认 0="" ,1="",2=""的顺序默认“键名”。但是,我如果删除了一个数组中的内容再追加就会出现 1="",0="",2=""类似的情况。

若此时我使用 测试数组[w]来获取值时(w为for循环里的值),那么会依次获取到数组中第2个内容 数组中第1个内容 数组中第3个内容

而不是我想要的数组中第1个内容 数组中第2个内容 数组中第3个内容

请问大家都是怎么解决的?或者数组命令里有其他参数可以强制数组是按照下标而不是键名的?求帮忙!

另外多维数组如何利用循环赋值?为什么我用 测试数组[x][y]=""的格式会提示测试数组[x][y]不是数组?

这个问题只是附带问一下,我主要是想解决第一个问题。谢谢了!
回复

使用道具 举报

发表于 2015-12-16 17:06:16 | 显示全部楼层
循环取数组内的值,且要求真正顺序的话建议用
  1. 数组获取元素
复制代码
去获取…


多维数组处理参考如下
  1.     var 多维数组 = array()
  2.     for(var i = 0; i < 10; i++)
  3.         多维数组[i] = array()
  4.         for(var j = 0; j < 10; j++)
  5.             //这里就能这样写  多维数组[i][j]
  6.         end
  7.     end
复制代码

回复 支持 反对

使用道具 举报

发表于 2015-12-16 07:39:52 | 显示全部楼层
字太多,,,,为什么我用 测试数组[x][y]=""的格式会提示测试数组[x][y]不是数组?
要先定义变量   测试数组[x][y]
回复 支持 反对

使用道具 举报

发表于 2015-12-16 09:39:08 | 显示全部楼层

tc现在不支持  测试数组[x][y]  这样声明了
其中x必须是确定值,例如x是2的话,可以这样声明:
变量 测试数组=数组(数组(),数组())

变量 测试数组=数组()
测试数组[0]=数组()
测试数组[1]=数组()
至于键值之类的情况,我写了两个函数,你可以参考一下
刚写出来,还没测试,对于一些错误没做判断.只是提供了大致思路


功能 数组指定位置删除2(&数组名,位置)
    变量 大小=数组大小(数组名)
    变量 值,下标,标记=假
   
    遍历(变量 i = 0; i < 大小; i++)
        数组获取元素(数组名,i,值,下标)
        如果(!是否整型(下标))
            返回 假   
        结束
        
        如果(i==位置)
            标记=真
        结束
        
        如果(标记)
            数组名[i-1]=值
        否则
            数组名[i]=值
        结束
    结束
    数组指定位置删除(数组名,大小-1)
    返回 真
结束
功能 数组追加元素2(&数组名,值,下标="")
    变量 大小=数组大小(数组名)
    如果(下标=="")
        数组名[大小]=值
        返回 真
    结束
   
    遍历(变量 i = 大小; i > 下标; i--)
        数组名[i]=数组名[i-1]
    结束
    数组名[下标]=值
结束

回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-10-2 03:59 , Processed in 0.032179 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表