ICollection的简单实现

来源:互联网 发布:少女终末旅行 知乎 编辑:程序博客网 时间:2024/05/17 02:25

                     ICollection的简单实现

 公共属性

 

名称

说明

Count

获取 ICollection 中包含的元素数。

IsSynchronized

获取一个值,该值指示是否同步对 ICollection 的访问(线程安全)。

SyncRoot

获取可用于同步 ICollection 访问的对象。

页首

 公共方法

 

名称

说明

CopyTo

从特定的 Array 索引处开始,将 ICollection 的元素复制到一个 Array 中。

 

namespace ConsoleApplication3

{

    class Program

    {

        public class MyClass : ICollection

        {

            private int[] _array;

            private object o = new object();

 

            public  MyClass()//构造函数;

            {

               // _array = new int[10]{1,2,3,4,5,6,7,8,9,0};

            }

            public int Count//接口中的属性;

            {

                get

                {

                    return _array.Length;

                }

            }

            public bool IsSynchronized

            {

                get

                {

                    return true;

                }

            }

 

            public object SyncRoot

            {

                get

                {

                    return o;

                }

            }

            public  void CopyTo(Array a,int index)//接口中的方法

            {

 

                _array.CopyTo(a, index);

 

 

            }

            public IEnumerator GetEnumerator()

            {

                return _array.GetEnumerator();

            }

 

        }

        static void Main(string[] args)

        {

            ICollection g = new int[10] { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };//new MyClass();

           

            int [] m = new int[19];

            g.CopyTo(m, 3);

            for(int i = 0; i < 19; i++)

            { 

                int j = m[i];

                Console.Write(j);

            }

            Console.Read();

        }

    }

}

 
原创粉丝点击