1. 程式人生 > >C#基礎-數組-ArrayList

C#基礎-數組-ArrayList

pre rand true 固定 動態 lex names 根據 index

數組ArrayList

using System.Collections;   //表示引入集合的命名空間

數組ArrayList容量本身是不固定的,根據存儲的數據動態變化

// 聲明一個ArrayList對象
ArrayList arrList = new ArrayList();
// 可以在數組中任意添加元素
arrList.Add(12);
arrList.Add(5);
arrList.Add(9);
Console.WriteLine("數組的容量是:" + arrList.Capacity);

輸出ArrayList元素:每個放到ArrayList裏的數組元素都會轉換為object類型存放

foreach(object o in arrList)
{
    Console.WriteLine(o);
}

排序

Console.WriteLine("排序後的ArrayList的元素是:");
arrList.Sort();
foreach(object o in arrList)
{
    Console.WriteLine(o);
}

ArrayList的增加與刪除元素

想ArrayList插入元素

arrList.Insert(0, 78);
foreach(object o in arrList)
{
    Console.WriteLine(o);
}

刪除ArrayList元素

arrList.Remove(78); 通過元素值刪除某個元素
arrList.RemoveAt(1); 通過索引刪除

arrList.Remove(78);     // 通過元素值刪除某個元素
arrList.RemoveAt(1);    // 通過索引刪除
Console.WriteLine("刪除後的元素:");
foreach (object o in arrList)
{
    Console.WriteLine(o);
}

在5個學生中隨機抽取2個學生名字

using System;
using System.Collections;   //表示引入集合的命名空間

namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            ArrayList stuNames = new ArrayList();
            stuNames.Add("Alex");
            stuNames.Add("Bob");
            stuNames.Add("Kate");
            stuNames.Add("Chale");
            stuNames.Add("Max");
            ArrayList selecList = new ArrayList();
            // 抽取兩個不同的學生
            for(int i = 1; i <= 2; i++)
            {
                while (true)
                {
                    int randIndex = new Random().Next(0, 5); //抽取0-4,不包含5
                    if (selecList.Contains(stuNames[randIndex]))    //重復抽取
                    {
                        continue;
                    }
                    else
                    {
                        selecList.Add(stuNames[randIndex]);
                        break;
                    }
                }
            }
            Console.WriteLine("抽取出來的兩名學生:");
            foreach(object o in selecList)
            {
                Console.WriteLine(o);
            }
        }
    }
}

C#基礎-數組-ArrayList