代码之家  ›  专栏  ›  技术社区  ›  Michael Grinnell

C#RemoveAll返回值并计数删除的对象

  •  -2
  • Michael Grinnell  · 技术社区  · 8 年前

    我是C语言的新手,我有一个方法,使用removeAll从列表中删除对象,但我不太确定返回值是什么。我环顾四周,但正在努力找到一个明确的答案。

    该方法是否根据移除的对象返回1或0的值,还是返回移除的对象数?如果只是返回1或0,我该如何计算已删除的对象数?

        public bool Remove(string name)
        {
            if (this.list.RemoveAll(x => x.Name.Equals(name)) == 1)
            {
                return true;
            }
    
            return false;
        } 
    
    2 回复  |  直到 8 年前
        1
  •  3
  •   4D1C70    8 年前

    根据 MSDN 用于列表。RemoveAll()

    列表。

    所以你可以 return this.list.RemoveAll(x => x.Name.Equals(name))

        2
  •  0
  •   Eric J.    8 年前

    list 属于类型 List<string> ,请注意,数据结构可以保存重复项。为了说明这一点,使用返回值是删除的元素数这一事实:

    public bool Remove(string name)
    {
        return this.list.RemoveAll(x => x.Name.Equals(name)) >= 1;
    }