狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# ArrayList 類

admin
2024年2月8日 10:55 本文熱度 684

摘要


ArrayList是一種泛型類,用于在C#中創(chuàng)建動(dòng)態(tài)數(shù)組。它提供了很多有用的方法,可以用于添加,插入或移除元素。由于ArrayList類是在System.Collections命名空間下定義的,因此在使用它之前必須加上這個(gè)命名空間。ArrayList是.NET Framework中最常用的動(dòng)態(tài)數(shù)組類之一,它是使用最廣泛的類之一。

ArrayList的一個(gè)重要特點(diǎn)是它是動(dòng)態(tài)數(shù)組。這意味著當(dāng)我們向ArrayList中添加元素時(shí),它會(huì)自動(dòng)調(diào)整大小以適應(yīng)這些元素。如果添加的元素超出了當(dāng)前數(shù)組的大小,ArrayList會(huì)創(chuàng)建一個(gè)新的數(shù)組并將元素復(fù)制到新數(shù)組中。這種機(jī)制使得ArrayList可以適應(yīng)各種數(shù)據(jù)集,并且可以避免不必要的內(nèi)存分配。

在ArrayList中,我們可以使用以下方法添加,插入或移除元素:

  • Add:向ArrayList中添加一個(gè)元素。

  • Insert:將一個(gè)元素插入到ArrayList的特定位置。

  • Remove:從ArrayList中移除一個(gè)元素。

除此之外,ArrayList還提供了許多其他有用的方法,例如Find和IndexOf,這些方法可以用于查找元素在ArrayList中的位置。

雖然ArrayList是一種強(qiáng)大的數(shù)組類,但是它也有一些缺點(diǎn)。例如,在添加或移除元素時(shí),ArrayList需要調(diào)整大小,這可能會(huì)導(dǎo)致一些性能問題。此外,在訪問ArrayList中的元素時(shí),我們只能一次獲取或設(shè)置一個(gè)元素的值。這可能會(huì)導(dǎo)致一些不必要的復(fù)制和比較操作,從而影響程序的性能。

ArrayList是一種非常有用的類,可以幫助我們創(chuàng)建動(dòng)態(tài)數(shù)組。盡管它有一些缺點(diǎn),但是在大多數(shù)情況下,ArrayList都是一種非常實(shí)用的工具,可以提高程序的效率和靈活性。

正文


不建議將類用于 ArrayList 新開發(fā)。 相反,我們建議使用泛型 List<T> 類。 該 ArrayList 類旨在保存對(duì)象的異類集合。 但是,它并不總是提供最佳性能。 建議執(zhí)行以下操作:

  • 對(duì)于對(duì)象的異類集合,請(qǐng)使用 List<Object> C#)  。

  • 對(duì)于對(duì)象的同質(zhì)集合,請(qǐng)使用 List<T> 該類。

屬性



Capacity獲取或設(shè)置 ArrayList 可包含的元素?cái)?shù)。
Count獲取 ArrayList 中實(shí)際包含的元素?cái)?shù)。
IsFixedSize獲取一個(gè)值,該值指示 ArrayList 是否具有固定大小。
IsReadOnly獲取一個(gè)值,該值指示 ArrayList 是否為只讀。
IsSynchronized獲取一個(gè)值,該值指示是否同步對(duì) ArrayList 的訪問(線程安全)。
Item[Int32]獲取或設(shè)置指定索引處的元素。
SyncRoot獲取可用于同步對(duì) ArrayList 的訪問的對(duì)象。

方法



Adapter(IList)為特定 IList 創(chuàng)建 ArrayList 包裝。
Add(Object)將對(duì)象添加到 ArrayList 的結(jié)尾處。
AddRange(ICollection)將 ICollection 的元素添加到 ArrayList 的末尾。
BinarySearch(Int32, Int32, Object, IComparer)使用指定的比較器在已排序 ArrayList 的某個(gè)元素范圍中搜索元素,并返回該元素從零開始的索引。
BinarySearch(Object)使用默認(rèn)的比較器在整個(gè)已排序的 ArrayList 中搜索元素,并返回該元素從零開始的索引。
BinarySearch(Object, IComparer)使用指定的比較器在整個(gè)已排序的 ArrayList 中搜索元素,并返回該元素從零開始的索引。
Clear()從 ArrayList 中移除所有元素。
Clone()創(chuàng)建 ArrayList 的淺表副本。
Contains(Object)確定某元素是否在 ArrayList 中。
CopyTo(Array)從目標(biāo)數(shù)組的開頭開始,將整個(gè) ArrayList 復(fù)制到兼容的一維 Array。
CopyTo(Array, Int32)從目標(biāo)數(shù)組的指定索引處開始將整個(gè) ArrayList 復(fù)制到兼容的一維 Array。
CopyTo(Int32, Array, Int32, Int32)從目標(biāo)數(shù)組的指定索引處開始,將 ArrayList 中某個(gè)范圍的元素復(fù)制到兼容的一維數(shù)組 Array。
Equals(Object)確定指定對(duì)象是否等于當(dāng)前對(duì)象。  (繼承自 Object)
FixedSize(ArrayList)返回具有固定大小的 ArrayList 包裝。
FixedSize(IList)返回具有固定大小的 IList 包裝。
GetEnumerator()返回用于整個(gè) ArrayList 的枚舉數(shù)。
GetEnumerator(Int32, Int32)返回 ArrayList 中元素范圍的枚舉器。
GetRange(Int32, Int32)返回一個(gè) ArrayList,它表示源 ArrayList 中的元素子集。
IndexOf(Object)搜索指定的 Object,并返回整個(gè) ArrayList 中第一個(gè)匹配項(xiàng)的從零開始的索引。
IndexOf(Object, Int32)搜索指定的 Object,并返回 ArrayList 中從指定索引到最后一個(gè)元素的元素范圍中第一個(gè)匹配項(xiàng)的從零開始索引。
IndexOf(Object, Int32, Int32)搜索指定的 Object,并返回 ArrayList 中從指定索引開始,并包含指定元素?cái)?shù)的元素范圍中第一個(gè)匹配項(xiàng)的從零開始的索引。
Insert(Int32, Object)將元素插入 ArrayList 的指定索引處。
InsertRange(Int32, ICollection)將集合中的元素插入 ArrayList 的指定索引處。
LastIndexOf(Object)在整個(gè) ArrayList 中搜索指定的 Object,并返回最后一個(gè)匹配項(xiàng)的從零開始的索引。
LastIndexOf(Object, Int32)搜索指定的 Object,并返回 ArrayList 中從第一個(gè)元素到指定索引這部分元素中最后一個(gè)匹配項(xiàng)的從零開始索引。
LastIndexOf(Object, Int32, Int32)搜索指定的 Object,并返回 ArrayList 中到指定索引為止包含指定元素?cái)?shù)的這部分元素中最后一個(gè)匹配項(xiàng)的從零開始的索引。
ReadOnly(ArrayList)返回只讀的 ArrayList 包裝。
ReadOnly(IList)返回只讀的 IList 包裝。
Remove(Object)從 ArrayList 中移除特定對(duì)象的第一個(gè)匹配項(xiàng)。
RemoveAt(Int32)移除 ArrayList 的指定索引處的元素。
RemoveRange(Int32, Int32)從 ArrayList 中移除一系列元素。
Repeat(Object, Int32)返回 ArrayList,其元素是指定值的副本。
Reverse()將整個(gè) ArrayList 中元素的順序反轉(zhuǎn)。
Reverse(Int32, Int32)將指定范圍中元素的順序反轉(zhuǎn)。
SetRange(Int32, ICollection)復(fù)制 ArrayList 中一個(gè)子集合的元素。
Sort()對(duì)整個(gè) ArrayList 中的元素進(jìn)行排序。
Sort(IComparer)使用指定的比較器對(duì)整個(gè) ArrayList 中的元素進(jìn)行排序。
Sort(Int32, Int32, IComparer)使用指定的比較器對(duì) ArrayList 中某個(gè)范圍內(nèi)的元素進(jìn)行排序。
Synchronized(ArrayList)返回同步的(線程安全)ArrayList 包裝器。
Synchronized(IList)返回同步的(線程安全)IList 包裝器。
ToArray()將 ArrayList 的元素復(fù)制到新 Object 數(shù)組中。
ToArray(Type)將 ArrayList 的元素復(fù)制到新的指定元素類型數(shù)組中。


ArrayList元素的添加

private void btnAdd_Click(object sender, EventArgs e)
{
    ArrayList array = new ArrayList();
    array.Add(1);
    array.Add("張飛");
    array.Add(10.4f);
    string[] ary1 = { "hello", "world" };
    array.AddRange(ary1);
    foreach (var item in array)
    {
        MessageBox.Show(item.ToString());
    }
}

ArrayList元素的刪除

private void btnDelete_Click(object sender, EventArgs e)
{
    array.RemoveAt(2);
    array.Remove("張飛");//用于移除指定元素值的第一個(gè)匹配集合元素
    foreach (var item in array)
    {
        MessageBox.Show(item.ToString());
    }
    array.RemoveRange(1, 2);//從1開始,刪除2個(gè)元素
    array.Clear();//刪除所有
}

ArrayList元素的查找

private void btnSearch_Click(object sender, EventArgs e){    int idx = array.IndexOf(txtSearch.Text);    MessageBox.Show(idx.ToString());    idx = array.LastIndexOf(txtSearch.Text);    MessageBox.Show(idx.ToString());}

是否包括:

var ret = array.Contains(10.4f);
MessageBox.Show(ret.ToString());


該文章在 2024/2/8 10:55:22 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved