c#数组用法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c#数组用法

数组是一种常用的数据类型,且属于引用类型。它是由一组相同数据类型的元素构成的。在C#语言的类型系统中,数组由抽象类System.Array派生而来的。在内存中,数组占用一块连续的内存,元素按顺序连续存放在一起,数组中每一个单独的元素并没有自己的名字,但是可以通过其位置(索引)来进行访问或修改。

在C#中,数组元素的索引是从0开始的,即对于有N个元素的数组,其索引范围是从0~N-1。在这里重点讨论一下一位数组的使用方法。

1.一维数组的声明

数组声明时,主要声明数组的名称和所包含的元素类型,一般格式如下:

数组类型[] 数组名;

数组类型,可以使C#中任意有效的数据类型,包括类;数组名可以是C#中任意有效的标识符。下面是数组声明的几个例子:

int[ ] num;

float [ ] fNum;

string[ ] sWords;

Studnet[ ] stu; //Student是已定义好的类类型

注意:

数据类型[ ] 是数组类型,变量名放在[ ]后面,这与C和C++是不同的;

声明数组时,不能指定长度。

2.一维数组的创建

创建数组就是给数组对象分配内存。因为数组本身也是类,所以跟类一样,声明数组时,并没有真正创建数组,使用前,要用new操作符来创建数组对象。创建方法有以下几种方法:(1)先声明,后创建

形式为:

数据类型[ ] 数组名;

数组名 = new 数据类型[元素个数];

下面举几个例子:

int [] num; num = new int[10]; //声明并创建了一个具有10个整型元素的数组num。 string[ ] str; str = new string[3]; //声明并创建了一个具有3个字符串数据类型的数组str.

double [] dnum; dnum = new double[5]; //声明并创建了一个具有5个double型数据元素的数组dnum.

(2)声明的同时创建数组

数据类型[ ] 数组名 = new 数据类型[元素个数];

下面是几个例子:

int[] num = new int[10];

double[] t = new double[4];

short[] st = new short[17];

3.一维数组的初始化

数组在定义的同时给定元素的值,即为数组的初始化,初始化方法有以下几种:

(1)数据类型[ ] 数组名 = new 数据类型[元素个数]{初始值列表}; 如以下例子:

int [] num = new int[4]{12,34,56,78};

string[ ] str = new string[3]{"you","and","me"};

float[ ] f = new float[5]{1.345f,12,13.5f,109.345f,12.1f};

(2)省略数组的大小,即:数据类型[ ] 数组名 = new 数据类型[ ]{初始值列表}; 如以下的例子:

short[ ] st = new short[]{2,4,67,3}; //数组元素的个数为4

int[ ] iNum = new int[]{23,45,67,89,100,234,567,234}; //数组元素的个数为8

(3)进一步省略new和数据类型[],即:数据类型[ ] 数组名 = {初始值列表}; 如以下的例子:

string[ ] names = {"wangtao","liuli","sanmao","shanghaitan","jinghuayanyun"};

int [ ] iNum = {45,28,34,74,84};

4.一维数组的赋值

要给数组赋值,需要用到数组的索引,格式为:

数组名[索引值] = 数据的值;

下面试一个例子:

int [] a = new int[4];

a[0] = 24;

a[1] = 54;

a[2] = 87;

a[3] = 93;

注意到以上的例子索引是从0~3。我们也看出,在给数组进行大量的赋值时,显得较麻烦,不如初始化方便。

5.数组类常用属性和方法

Length 获得数组元素的个数

Rank 获得数组的秩(维数),对于一维数组来说,Rank 总是为1。

GetLength(int) 获得指定维度的元素个数。

6.数组应用举例

(1)用选择法对10个数按着由小到大进行排序。

源程序代码如下:

using System;

class Class1

{

static void Sort(int[] a)

{

int i,j,k,temp;

for(i=0;i

{

k=i;

for(j=i+1;j

if(a[k]>a[j])

k=j;

if(k!=i)

{temp = a[i];a[i] = a[k]; a[k] = temp;}

}

}

static void Main(string[] args)

{

int[] AA = new int[]{918,124,58,1125,825,51,82}; Sort(AA);

Console.WriteLine("排序后的结果:");

for(int i=0;i

Console.Write(AA[i]+" ");

Console.WriteLine();

}

}

相关文档
最新文档