public void ArrayListOperations()
        {
            ArrayList arrayList = new ArrayList();

            arrayList.Add(10);
            arrayList.Add(89);
            arrayList.Add(29);
            arrayList.Add(-1);
            arrayList.Add(15);
            PrintArrayList(arrayList);
            arrayList.Sort();
            arrayList.Insert(2, 18);
            PrintArrayList(arrayList);
            Console.WriteLine("\nArraylist capacity\t" + arrayList.Capacity);
            int hasElement = arrayList.IndexOf(23);

            if (hasElement >= 0)
            {
                Console.WriteLine("Element is present");
            }
            else
            {
                Console.WriteLine("Element is not present");
            }
            arrayList.TrimToSize();
            Console.WriteLine("\nArraylist capacity\t" + arrayList.Capacity);
            int[] arr = { 14, 17 };
            arrayList.AddRange(arr);
            PrintArrayList(arrayList);
            arrayList.InsertRange(3, arr);
            PrintArrayList(arrayList);
            arrayList.SetRange(7, arr);
            PrintArrayList(arrayList);
        }
示例#2
0
        public ArrayList_p()
        {
            arrayList  = new ArrayList();
            arrayList1 = new ArrayList(40);

            Console.WriteLine("ArrayList default capacity: {0}", arrayList.Capacity);
            Console.WriteLine("ArrayList(40) default capacity: {0}", arrayList1.Capacity);

            arrayList.Add("some");
            arrayList.Add("text");

            Console.WriteLine("ArrayList capacity (after adding 2 elements): {0}", arrayList.Capacity);

            arrayList.Add("foo");
            arrayList.Add("bar");
            arrayList.Add("lol");

            Console.WriteLine("ArrayList capacity (after adding 3 elements): {0}", arrayList.Capacity);
            Console.WriteLine("ArrayList count elements: {0}", arrayList.Count);

            Console.WriteLine("ArrayList has a fixed size: {0}", arrayList.IsFixedSize);
            Console.WriteLine("ArrayList is read-only: {0}", arrayList.IsReadOnly);
            Console.WriteLine("ArrayList is synchronized (thread-safe): {0}", arrayList.IsSynchronized);

            var s_arrList = ArrayList.Synchronized(arrayList);

            Console.WriteLine("ArrayList is synchronized (thread-safe): {0}", s_arrList.IsSynchronized);

            lock (arrayList.SyncRoot)
            {
                foreach (var element in arrayList)
                {
                    Console.Write("{0} ", element.ToString());
                }
                Console.Write("\n");
            }

            // ArrayList does not guarantee sorted array, need to sort in manually before doing BinarySearch
            arrayList.Sort();
            int elementIndex = arrayList.BinarySearch("foo");

            Console.WriteLine("ArrayList BinarySearch returns element position: {0}", elementIndex.ToString());

            arrayList.TrimToSize();
            Console.WriteLine("ArrayList capacity after trimming to size: {0}", arrayList.Capacity);

            arrayList.Clear();
            Console.WriteLine("ArrayList count after clearing: {0}", arrayList.Count);
            Console.WriteLine("ArrayList capacity after clearing: {0}", arrayList.Capacity);
        }