根据索引 删除数组中的元素的问题,请教![已解决]
本帖最后由 xiaochuan 于 2012-4-13 12:27 编辑#include <Array.au3>
Local $a= ;大数组
Local $b=;索引数组, 用来_ArrayDelete做参
Local $x
For $x=0 To 2
_ArrayDelete($a,$b[$x])
Next
_ArrayDisplay($a);==>结果是, 怎么得到呢 ? 可以这样_ArrayDelete($a,$b)
但是 如果想删除数组中任意一些元素,而且这些元素是不规律的索引,就蒙了。
如果有一个大数组,一个索引数组,求助 根据索引数组 遍历删除大数组中元素 的方法,多谢! 不要删 $a ,
楼主该习惯习惯从$a 开始存放数据 不要删 $a ,
楼主该习惯习惯从$a 开始存放数据
veket_linux 发表于 2012-4-13 12:10 http://www.autoitx.com/images/common/back.gif
大哥,这个我明白,我就是举个例子。继续求教删除元素的问题。 看错了
分析:
当你删掉$a 时
数组变为
$a$a $a$a
1 2 3 4
然后你再删
$a
删的 是原来的 $a 即2 for 循环 倒过来先删后面的 再删前面的(b要从小到大排好序,从b的尾部开始取索引) 看错了
分析:
当你删掉$a 时
数组变为
$a$a $a$a
1 2 ...
veket_linux 发表于 2012-4-13 12:17 http://www.autoitx.com/images/common/back.gif
对啊,删完一个之后,原数组就变了,再继续删,就不是想要的了,如何能准确的 根据索引数组,去批量删除 对应的元素呢? 好晕~~ for 循环 倒过来先删后面的 再删前面的(b要从小到大排好序,从b的尾部开始取索引)
veket_linux 发表于 2012-4-13 12:19 http://www.autoitx.com/images/common/back.gif
请给个例子吧,这个思路好晕~~
#include <Array.au3>
Local $a= ;大数组
Local $b=;索引数组, 用来_ArrayDelete做参
Local $x
For $x=UBound($b)-1 To 0 Step -1
_ArrayDelete($a,$b[$x])
Next
_ArrayDisplay($a);
veket_linux 发表于 2012-4-13 12:23 http://www.autoitx.com/images/common/back.gif
ok,明白了,原来如此,多谢!!!!实在没想到。。。多谢!!!! 回复 8# veket_linux
原来是这样啊
页:
[1]