自制Json 类库之 JsonArray

自制Json 类库之 JsonArray

JsonArray 用于模拟Json 数组可以存储Json 对象

 

JsonArray 代码:

public class JsonArray : Json, IList<Json>
    {
        private List<Json> list;

        public JsonArray()
        {
            this.list = new List<Json>();
        }

        public JsonArray(IEnumerable<Json> collection)
        {
            this.list = new List<Json>(collection);
        }

        public JsonArray(int capacity)
        {
            this.list = new List<Json>(capacity);
        }

        public int IndexOf(Json item)
        {
            return this.list.IndexOf(item);
        }

        public void Insert(int index, Json item)
        {
            this.list.Insert(index, item);
        }

        public void RemoveAt(int index)
        {
            this.list.RemoveAt(index);
        }

        public Json this[int index]
        {
            get { return this.list[index]; }
            set { this.list[index] = value; }
        }

        public void Add(Json item)
        {
            this.list.Add(item);
        }

        public void Clear()
        {
            this.list.Clear();
        }

        public bool Contains(Json item)
        {
            return this.list.Contains(item);
        }

        public void CopyTo(Json[] array, int arrayIndex)
        {
            this.list.CopyTo(array, arrayIndex);
        }

        public int Count
        {
            get { return this.list.Count; }
        }

        bool ICollection<Json>.IsReadOnly
        {
            get { return ((ICollection<Json>)this.list).IsReadOnly; }
        }

        public bool Remove(Json item)
        {
            return this.list.Remove(item);
        }

        public IEnumerator<Json> GetEnumerator()
        {
            return this.list.GetEnumerator();
        }

        IEnumerator IEnumerable.GetEnumerator()
        {
            return this.list.GetEnumerator();
        }

        public override string ToString()
        {
            var builder = new StringBuilder();
            builder.Append("[");
            foreach (var item in this.list)
            {
                builder.Append(item.ToString() + ",");
            }
            if (builder.ToString().EndsWith(","))
            {
                builder.Remove(builder.Length - 1, 1);
            }
            builder.Append("]");
            return builder.ToString();
        }
    }

 

posted @ 2014-12-09 14:30  忤逆小旭  阅读(162)  评论(0)    收藏  举报