日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#集合类型——Array、ArrayList、List 之浅谈

發(fā)布時(shí)間:2023/12/9 C# 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#集合类型——Array、ArrayList、List 之浅谈 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在學(xué)習(xí)或工作中,集合是經(jīng)常用到的,可以換一句話說“無項(xiàng)目無集合”,“項(xiàng)目皆有集合”。它一般存儲(chǔ)一系列數(shù)據(jù)或者將一系列數(shù)據(jù)進(jìn)行相關(guān)操作。在這里先大略談一些集合類型的相關(guān)知識(shí)用于回顧。

數(shù)組(Array)

數(shù)組一般只存儲(chǔ)一種類型的數(shù)據(jù),有一維數(shù)組,二維數(shù)組等多維數(shù)組。都基于System.array類。

格式:type[]? typename;? type指類型,typename指數(shù)組名稱。

一維數(shù)組有多種書寫形式:

int [] a={1,2,3};

int [] b=new int[]{1,2,3};

int [] c;? c=new int[]{1,2,3};

int [] d=new int[3];d[0]=1;d[1]=2;d[2]=3;

二維數(shù)組:相當(dāng)于表格

int[,] e=new int[2,2];? e[0,0]=1;e[0,1]=2;e[1,0]=3;e[1,1]=4;//兩行兩列

int[,] f=new int[2,2]{{1,2},{3,4}};//已知行列數(shù)

int[,] f=new int[,]{{1,2},{3,4}};//未知行列數(shù),根據(jù)后面的初始化來規(guī)定行列數(shù)

?

三維 類推,相當(dāng)于四方體。

交錯(cuò)數(shù)組:相當(dāng)于一維數(shù)組的每一個(gè)元素又是一個(gè)數(shù)組。常稱為,數(shù)組的數(shù)組。

int[][] h=new int [2][]{new int[]{2,4,6},new int[]{1,2,3,4,5}};

int[][] i=new int[][]{new int[]{2,4,6},new int[]{1,2,3,4,5}};

?

int[][] j={new int[]{2,4,6},new int[]{1,2,3,4,5}};

int[][] k=new int[2][]; k[0]=new int[3]{2,4,6}; k[1]=new int[5]{1,2,3,4,5};

?

?

則,k[0][0]=2;k[0][1]=4;k[1][2]=3;....

int[][,] m=new int [2][,]

{?? new int[,] {{1,3},{5,7}},new int[,]{{0,2},{4,6}}}

數(shù)組常用操作

(1)遍歷數(shù)組

?

int [] a={1,2,3};

foreach(int n in a){Console.WriteLine(n);}

結(jié)果輸出 1 2 3

(2)數(shù)組字符串之間轉(zhuǎn)換

string[]? sArr1={"123","456","789"};

string?? str1=sArr1.Join(",");//結(jié)果為字符串:123,456,789

string[]? sArr2=str1.Split(',');//字符串轉(zhuǎn)化為string數(shù)組,去掉分隔符“,”,轉(zhuǎn)化維數(shù)組

-----------------------------------------------

string? str2="abc 12,65;8"

string?[]? sArr2=str2.Split(',' ,' ' ,';');

----------------------------------------------

string s="13mnnfsj";

char[]? a=s.TocharArray();\\將字符串轉(zhuǎn)化為char數(shù)組。

(3)常用函數(shù)

int[] a={1,2,3,4};

a.Sum();//總和;? a.Average();? a,Min();?? a.Max();

(4)排序、復(fù)制、查找

int? []a={1,2,3};

int? []b=new int[a.Length];??

Array.Copy(a,b,a.Length);//將a數(shù)組復(fù)制到b數(shù)組

Array.Sort(a);//將a數(shù)組升序排列

Array.Reverse(a);//將a數(shù)組反轉(zhuǎn)排序

使用Contains方法和IndexOf方法查找指定的元素。

ArrayList類

相當(dāng)于一種高級(jí)動(dòng)態(tài)數(shù)組。using System.Collections.Generic;它比數(shù)組更高級(jí),可以動(dòng)態(tài)的刪除和添加元素并且它的容量可以擴(kuò)充,但是它只有一維的形式。一般有三種構(gòu)造方式。

一,默認(rèn)的大小(16)來初始化

ArrayList arr=new ArrayList ();

二,將一個(gè)集合元素添加ArrayList 中

int[] a=new int[]{1,2,3};

ArrayList arr1=new ArrayList (a);

三,指定大小來初始化,

ArrayList arr2=new ArrayList (100);

常用屬性:略,在VS里,比如輸入 以上的arr2.時(shí)就會(huì)顯示其屬性和說明。

常用方法

int[] a=new int[]{1,2,3};

ArrayList arr1=new ArrayList (a);

(一)增加

1,Add(元素);方法,

arr1.Add(7);// arr1元素為1 2 3 7

2,Insert(索引,元素);方法//索引從0開始

arr1.Insert(1,7);// arr1元素為1 7 2 3

(二)刪除

1,Clear()方法//刪除所有

arr1.Clear();//arr1為空了。

2.Remove(匹配對(duì)象)方法//移除首次匹配對(duì)象

arr1.Remove(3);//arr1元素為1 2

3,RemoveAt(索引)方法//刪除索引對(duì)應(yīng)的元素

arr1.RemoveAt(1);//arr1元素為1 3

4,RemoveRange(索引,范圍)方法//從索引處刪除一定范圍的數(shù)

arr1.RemoveRange(1,2);//arr1元素為1

(三)遍歷

同數(shù)組一樣

(四)查找

Contains(元素);方法

arr1.Contain(3);//判斷arr1是否包含3這個(gè)元素,包含,為True ;不包含為 False

List

using System.Collections.Generic; 它是將ArrayList 規(guī)定了類型,提高編碼質(zhì)量,較少了類型之間的錯(cuò)誤。在這里大略講解一下一般List的用法,在以后將會(huì)深入研究泛型List的運(yùn)用。

List <int> lis1=new List<int>();

(一)添加

lis1.Add(500);//直接添加一串元素

list1.AddRange(new int[]{501,502});//添加一串元素。

(二)插入,刪除,查找等一系列操作與上面 ArrayList和Array相似。

--------------------------------------------

規(guī)定類型也可以為自定義類型,比如:

1,先見一個(gè)Person類

?? class Person {
??????? public string name ;
??????? public string Name {
??????? get{return name;}
??????????? set { value = name; }
??????? }
??? }

2,創(chuàng)建Person對(duì)象

?Person p = new Person();
??????????? p.name = "Chen";
??????????? Person p1 = new Person();
??????????? p1.name = "Li";
??????????? Person p2 = new Person();
??????????? p2.name = "Zhang";

3,創(chuàng)建Person類型的集合并將Perosn對(duì)象放入集合

? List <Person>Li=new List<Person>();
??????????? Li.Add(p);
??????????? Li.Add(p1);
??????????? Li.Add(p2);


??????????? Console.WriteLine(Li[0].name);//輸出集合的第一個(gè)元素,結(jié)果為:Chen。

?

轉(zhuǎn)載于:https://www.cnblogs.com/anyihen/p/5456964.html

總結(jié)

以上是生活随笔為你收集整理的C#集合类型——Array、ArrayList、List 之浅谈的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。