Managed空间

彭刚的blog
随笔 - 26, 评论 - 153, 引用 - 81

导航

标签

每月存档

最新留言

广告

 

    public interface ICollection : IEnumerable {

           void CopyTo(Array array, int index);

           int Count { get; }

           Object SyncRoot { get; }

           bool IsSynchronized     { get; }

}

 

    public interface ICollection : IEnumerable {

        int Count { get; }

        bool IsReadOnly { get; }

        void Add(T item);

        void Clear();

        bool Contains(T item);

        void CopyTo(T[] array, int arrayIndex);                

        bool Remove(T item);

}

ICollection相比,泛型ICollection接口中增加了许多方法。ICollection中的方法太少,所以实际上没有什么用处。ICollecion使定义新的Collection(比如LinkedListTree可以实现ICollection<T>)更加方便。

 

Synchronization有关的方法被去掉了,原因是使用Framework提供的Wrapper并不能保证正确的Synchronization. 下面是一个例子:

         Hashtable hashtable = Hashtable.Synchronized(new Hashtable());  

      if(!hashtable.Contains(key)) {

              hashtable.Add(key, value);

}

Add方法还是有可能产生异常。用户有更多的信息来决定什么时候需要使用lock以及lock的范围。

 

例外Remove方法返回bool,用于指明指定的值是否存在于Collection中。

打印 | 张贴于 2004-07-08 09:49:00 | Tag:Generics

留言反馈

#回复: System.Collections.Generic.ICollection<T>与System.Collections.ICollection的区别 编辑
SSS
2007-08-04 10:11:00 | [匿名:SAS]
#re: System.Collections.Generic.ICollection<T>与System.Collections.ICollection的区别 编辑
希望得到你的指点。
wzx2855@hotmail.com
2005-12-28 12:21:00 | [匿名:wang2855]
#re:System.Collections.Generic.ICollection 编辑
System.Collections.Generic.ICollection
2005-06-16 14:01:00 | [匿名:一氧化碳测定仪]
#re:System.Collections.Generic.ICollection 编辑
^_~,pretty good!csharpsseeoo
2005-05-18 19:38:00 | [匿名:光谱仪]
#re:System.Collections.Generic.ICollection 编辑
^_^,Pretty Good!
2005-04-10 20:11:00 | [匿名:toho搅拌机]
对不起,目前本随笔不允许发表新评论.

Powered by: Joycode.MVC引擎 0.5.2.0