最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 列表List的常用屬性和方法介紹

 更新時(shí)間:2021年04月12日 11:28:21   作者:戒生  
這篇文章主要介紹了C# 列表List的常用屬性和方法介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1.創(chuàng)建列表

(列表可以存儲(chǔ)任何類型的數(shù)據(jù),在創(chuàng)建列表對(duì)象的時(shí)候首先要指定你要?jiǎng)?chuàng)建的這個(gè)列表要存儲(chǔ)什么類型的)(泛型)

//創(chuàng)建列表
        //方法一
        List<int> intList = new List<int>();//創(chuàng)建了一個(gè)空的列表 通過(guò)類型后面的<>來(lái)表示這個(gè)列表存儲(chǔ)的數(shù)據(jù)的類型
        //方法二
        var intlist1 = new List<string>();
        //方法三
        var intlist2 = new List<int>(){1,2,3};//創(chuàng)建了一個(gè)列表,里面的初始值有三個(gè)分別為 1 2 3

2.遍歷列表

for循環(huán),遍歷所有的索引,通過(guò)索引訪問(wèn)列表中的元素

for(int i=0;i<list.Count;i++){
 //循環(huán)體list[i]
}

foreach遍歷

  foreach(var temp in list){ //依次取得list中的每一個(gè)元素賦值給temp,并執(zhí)行循環(huán)體
   //循環(huán)體 temp
  }

3.列表的常用屬性方法

1,Capacity獲取容量大小

2,Add()方法添加元素

    var scoreList = new List<int>();
    scoreList.Add(12);
    scoreList.Add(34);
    scoreList.Add(56);
    foreach (var temp in scoreList)
    {
        Console.Write(temp + " ");
    }
    Console.ReadKey();

3,Insert()方法插入元素

 var scoreList = new List<int>(){100,200,300,100};
    //遍歷列表
    foreach (var temp in scoreList)
    {
        Console.Write(temp + " ");
    }
    
      Console.WriteLine();
        scoreList.Insert(3, -100);//向指定索引位置插入元素,原來(lái)的元素向后移動(dòng)一位。插入索引不能超出索引范圍,插入索引最大可為scoreList.Count
        foreach (var temp in scoreList)
        {
            Console.Write(temp + " ");
        }
        Console.WriteLine();
        Console.ReadKey();

4,[index]訪問(wèn)元素

5,Count屬性訪問(wèn)元素個(gè)數(shù)

6,RemoveAt()方法移除指定位置的元素

scoreList.RemoveAt(1);//removeAt(index)填入要?jiǎng)h除的索引

7,IndexOf()方法取得一個(gè)元素所在列表中的索引位置

LastIndexOf()上面的方法是從前往后搜索,這個(gè)是從后往前搜索,搜索到滿足條件的就停止,上面的兩個(gè)方法,如果沒(méi)有找到指定元素就返回-1

    var scoreList = new List<int>(){100,200,300,100};
    //遍歷列表
    foreach (var temp in scoreList)
    {
        Console.Write(temp + " ");
    }
    Console.WriteLine();
    Console.WriteLine(scoreList.IndexOf(400));查找不到返回-1
    Console.WriteLine(scoreList.IndexOf(100));
    Console.WriteLine(scoreList.LastIndexOf(100));
    Console.ReadKey();

8,Sort()對(duì)列表中是元素進(jìn)行從小到大排序

    var scoreList = new List<int>(){100,200,300,100};
    //遍歷列表
    foreach (var temp in scoreList)
    {
        Console.Write(temp + " ");
    }
    Console.WriteLine();
    scoreList.Sort();//排序
    foreach (var temp in scoreList)
    {
        Console.Write(temp + " ");
    }
    Console.WriteLine();
    Console.ReadKey();

關(guān)于列表的更多內(nèi)容

1,列表內(nèi)部數(shù)據(jù)是使用數(shù)組進(jìn)行的存儲(chǔ),一個(gè)空的列表內(nèi)部會(huì)有一個(gè)長(zhǎng)度為0的數(shù)組,當(dāng)給列表中添加元素的時(shí)候,列表的容量會(huì)擴(kuò)大為4,如果添加第5個(gè)的時(shí)候,列表的大小會(huì)重新設(shè)置為8,如果添加第9個(gè)元素,列表容量會(huì)擴(kuò)大為16,依次增加。當(dāng)列表的中的容量發(fā)生改變的時(shí)候,它會(huì)創(chuàng)建一個(gè)新的數(shù)組,使用Array.Copy()方法將舊數(shù)組中的元素復(fù)制到新數(shù)組中。為了節(jié)省時(shí)間,如果事先知道要存儲(chǔ)的數(shù)據(jù)的個(gè)數(shù),就可以利用列表的構(gòu)造函數(shù)指定列表的容量大小,比如下面的

List intlist = new List(10);創(chuàng)建了一個(gè)初始容量為10的列表,當(dāng)容量不夠用的時(shí)候,每次都會(huì)按照原來(lái)容量的2倍進(jìn)行擴(kuò)容。

我們可以通過(guò)Capacity屬性獲取和設(shè)置容量

intList.Capacity = 100;

2,注意容量和列表中元素個(gè)數(shù)的區(qū)別,容量是列表中用于存儲(chǔ)數(shù)據(jù)的數(shù)組的長(zhǎng)度通過(guò)Capacity 獲取,列表中的元素是我們添加進(jìn)去需要管理的數(shù)據(jù),通過(guò)Count獲取

例如

        List<int> intList = new List<int>();//創(chuàng)建列表
        for (int i = 0; i < 20; i++)
        {
            Console.WriteLine("列表長(zhǎng)度:" + intList.Capacity + " 元素個(gè)數(shù):" + intList.Count);
            intList.Add(10);
        }
        Console.ReadKey();

補(bǔ)充:C#中List怎么用?List基礎(chǔ)用法匯總

C#中的List怎么樣?List<T>類是ArrayList類的泛型等效類,該類使用大小可按需動(dòng)態(tài)增加的數(shù)組實(shí)現(xiàn)IList<T>泛型接口。

泛型的好處:它為使用c#語(yǔ)言編寫(xiě)面向?qū)ο蟪绦蛟黾恿藰O大的效力和靈活性。不會(huì)強(qiáng)行對(duì)值類型進(jìn)行裝箱和拆箱,或?qū)σ妙愋瓦M(jìn)行向下強(qiáng)制類型轉(zhuǎn)換,所以性能得到提高。

性能注意事項(xiàng):在決定使用IList<T>還是使用ArrayList類(兩者具有類似的功能)時(shí),記住IList<T>類在大多數(shù)情況下執(zhí)行得更好并且是類型安全的。如果對(duì)IList<T>類的類型T 使用引用類型,則兩個(gè)類的行為是完全相同的。但是,如果對(duì)類型T 使用值類型,則需要考慮實(shí)現(xiàn)和裝箱問(wèn)題。

C# List的基礎(chǔ)常用方法:

一、聲明:

1、List<T> mList = new List<T>();

T為列表中元素類型,現(xiàn)在以string類型作為例子:

List<string> mList = new List<string>();

2、List<T> testList =new List<T> (IEnumerable<T> collection);

以一個(gè)集合作為參數(shù)創(chuàng)建List:

string[] temArr = { "Ha", "Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku", "Locu"};
List<string> testList = new List<string>(temArr);

二、添加元素:

1、List. Add(T item)添加一個(gè)元素

例:

mList.Add("John");

2、List. AddRange(IEnumerable<T> collection)添加一組元素

例:

string[] temArr = {"Ha","Hunter","Tom","Lily","Jay","Jim","Kuku","Locu"};mList.AddRange(temArr);
 

3、Insert(intindex, T item);在index位置添加一個(gè)元素

例:

mList.Insert(1,"Hei");

三、遍歷List中元素:

foreach(TelementinmList)T的類型與mList聲明時(shí)一樣

{
Console.WriteLine(element);
}

例:

foreach(stringsinmList)
{
Console.WriteLine(s);
}

四、刪除元素:

1、List. Remove(T item)刪除一個(gè)值

例:

mList.Remove("Hunter");

2、List. RemoveAt(intindex);刪除下標(biāo)為index的元素

例:

mList.RemoveAt(0);

3、List. RemoveRange(intindex,intcount);

從下標(biāo)index開(kāi)始,刪除count個(gè)元素

例:

mList.RemoveRange(3, 2);

五、判斷某個(gè)元素是否在該List中:

List. Contains(T item)返回true或false,很實(shí)用

例:

if(mList.Contains("Hunter"))
{
Console.WriteLine("There is Hunter in the list");
}
else
{
mList.Add("Hunter");
Console.WriteLine("Add Hunter successfully.");
}

六、給List里面元素排序:

List. Sort ()默認(rèn)是元素第一個(gè)字母按升序

例:

mList.Sort();

七、給List里面元素順序反轉(zhuǎn):

List. Reverse ()可以不List. Sort ()配合使用,達(dá)到想要的效果

例:

mList.Sort();

八、List清空:

List. Clear ()

例:

mList.Clear();

九、獲得List中元素?cái)?shù)目:

List. Count ()返回int值

例:

in tcount = mList.Count();
Console.WriteLine("The num of elements in the list: "+count);

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • C#中List和數(shù)組之間轉(zhuǎn)換的方法

    C#中List和數(shù)組之間轉(zhuǎn)換的方法

    這篇文章主要介紹了C#中List和數(shù)組之間轉(zhuǎn)換的方法,涉及比較簡(jiǎn)單的轉(zhuǎn)換技巧,需要的朋友可以參考下
    2015-02-02
  • WPF利用TextBlock實(shí)現(xiàn)查找結(jié)果高亮顯示效果

    WPF利用TextBlock實(shí)現(xiàn)查找結(jié)果高亮顯示效果

    在應(yīng)用開(kāi)發(fā)過(guò)程中,經(jīng)常遇到這樣的需求:通過(guò)關(guān)鍵字查找數(shù)據(jù),把帶有關(guān)鍵字的數(shù)據(jù)顯示出來(lái),同時(shí)在結(jié)果中高亮顯示關(guān)鍵字,所以本文就來(lái)和大家介紹一下如何利用TextBlock實(shí)現(xiàn)查找結(jié)果高亮顯示效果吧
    2023-08-08
  • C#多線程數(shù)組模擬socket

    C#多線程數(shù)組模擬socket

    這篇文章主要為大家詳細(xì)介紹了C#多線程數(shù)組模擬socket的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • c#索引器詳解示例

    c#索引器詳解示例

    索引器是一種特殊的類成員,它能夠讓對(duì)象以類似數(shù)組的方式來(lái)存取,使程序看起來(lái)更為直觀,更容易編寫(xiě)。
    2014-04-04
  • c#多線程之線程基礎(chǔ)

    c#多線程之線程基礎(chǔ)

    本文詳細(xì)講解了c#多線程之線程基礎(chǔ),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • C# 中使用隱式和顯式操作符的示例

    C# 中使用隱式和顯式操作符的示例

    這篇文章主要介紹了C# 中使用隱式和顯式操作符的示例,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-04-04
  • C#使用百度Ueditor富文本框?qū)崿F(xiàn)上傳文件

    C#使用百度Ueditor富文本框?qū)崿F(xiàn)上傳文件

    這篇文章主要為大家詳細(xì)介紹了C#如何使用百度Ueditor富文本框?qū)崿F(xiàn)上傳文件(圖片,視頻等),文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-07-07
  • Unity實(shí)現(xiàn)透視滑動(dòng)列表

    Unity實(shí)現(xiàn)透視滑動(dòng)列表

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)透視滑動(dòng)列表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C#中的委托delegate用法的示例詳解

    C#中的委托delegate用法的示例詳解

    這篇文章主要介紹了C#中的委托用法的示例詳解。本章將由淺入深地講述什么是委托、為什么要使用委托、事件的由來(lái)、.NET Framework 中的委托和事件、委托中方法異常和超時(shí)的處理、委托與異步編程、委托和事件對(duì)Observer 設(shè)計(jì)模式的意義。感興趣的可以了解一下
    2020-07-07
  • Unity游戲開(kāi)發(fā)之2048游戲的實(shí)現(xiàn)

    Unity游戲開(kāi)發(fā)之2048游戲的實(shí)現(xiàn)

    2048是一款數(shù)字益智游戲,初始數(shù)字則是由2+2組成的基數(shù)4。在操作方面的不同則表現(xiàn)為一步一格的移動(dòng),變成更為爽快的一次到底。相同數(shù)字的方?jīng)r在靠攏、相撞時(shí)會(huì)相加。本文將通過(guò)Unity3D實(shí)現(xiàn)這一游戲,需要的可以參考一下
    2022-03-03

最新評(píng)論

谷城县| 宜兰市| 阳东县| 盐池县| 江都市| 锡林浩特市| 灵台县| 洛浦县| 宜宾县| 沂水县| 赤峰市| 祁连县| 湘潭市| 兴国县| 赣榆县| 合作市| 日喀则市| 陈巴尔虎旗| 丹巴县| 鄄城县| 原平市| 吉隆县| 汉源县| 洮南市| 遵义市| 齐齐哈尔市| 克山县| 四会市| 社会| 博兴县| 黄大仙区| 江门市| 体育| 金华市| 清新县| 乌拉特后旗| 阜宁县| 陆河县| 勐海县| 辽阳市| 星子县|