zoukankan      html  css  js  c++  java
  • 【Lua】table表删除指定元素 (转)

    在对表做删除操作时,发现table.remove(table,idx)这个方法是根据table中的索引进行删除操作,而现在的需求是根据value值进行删除操作,在quick-x中也有相应的table方法封装:

    1.根据table中的value值进行删除操作

    --    table中删除指定元素(非根据索引)
    --    @param    array 要操作的容器
    --    @param     value 删除value值
    --     @param    removeadll 是否删除所有相同的值
    --    @return 返回删除值的个数
    function removebyvalue(array, value, removeadll)
        --    deleteNum用于接收/返回删除个数; i/max 构成控制while循环
        local deleteNum,i,max=0,1,#array
        while i<=max do
            if array[i] == value then
                --    通过索引操作表的删除元素
                table.remove(array,i)
                --    标记删除次数
                deleteNum = deleteNum+1 
                i = i-1
                --    控制while循环操作
                max = max-1
                --    判断是否删除所有相同的value值
                if not removeadll then break end
            end
            i= i+1
        end
        --    返回删除次数
        return deleteNum
    end
  • 相关阅读:
    VC编程锦集-1
    VC窗口关闭调用顺序
    Windows消息WM_USER、WM_APP的区别
    Toolbar添加控件;创建多行toolbar;重新排列toolbar
    SQL模糊查询详解
    MySql格式化日期
    Apache PHP 服务环境配置
    kvm.install
    repo搭建
    apache故障处理
  • 原文地址:https://www.cnblogs.com/Liyang1992/p/4025283.html
Copyright © 2011-2022 走看看