C#中的数组

本文介绍了C#中的数组,包括数组的特点、一维数组的定义与初始化、多维数组的创建、foreach遍历数组的方法、字符串Split操作以及结构体和枚举类型的使用。详细阐述了数组的存储方式、索引访问以及在不同场景下的应用。

C#中的数组

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:C#

作者:吴锦华

撰写时间:2021/9/28

、C#数组简介

数组从字面上理解就是存放一组数,但在 C# 语言中数组存放的并不一定是数字,也可以是 其他数据类型。

数组的特点:

1.在一个数组中存放的值都是同一数据类型的

2.数组中某个指定的元素是通过索引来访问的

3.所有的数组都是由连续的内存位置组成的

4.数组从零开始建立索引,即数组索引从零开始

  • 一维数组

一维数组在数组中最常用,即将一组值存放到一个数组中,并为其定义一个名称,通过数组中元素的位置来存取值。

定义一维数组的语法形式如下: 

1 //定义数组

2 数据类型[] 数组名;

1 //初始化数组中的元素

2 数据类型[] 数组名 = new 数据类型[长度];

3 数据类型[] 数组名 = {1, 2, ...}

4 数据类型[] 数组名 = new 数据类型[长度]{1,值 2,...}

举例如下: 

三、多维数组

多维数组是指二维或二维以上的数组。一般我们最常用的是二维数组。

定义多维数组的语法形式如下。

1 //定义多维数组

2 数据类型[ , , ...] 数组名;

1 //创建多维数组并初始化

2 数据类型[ , , ...] 数组名 = new 数据类型[m,n,...] {{ , , ...},{ , , ...}}; 

从上面定义的语法可以看出,它与一维数组的定义非常类似,每多一个维度则定义时的[]中增加一个“,”。

存取数组中的值也是将下标用“,”隔开。

多维数组初始化:

举例如下:

四、foreach遍历

foreach 循环用于列举出集合中所有的元素,foreach 语句中的表达式由关键字 in 隔开的两个项组成。

in 右边的项是集合名,in 左边的项是变量名,用来存放该集合中的每个元素。

该循环的运行过程如下:

每一次循环时,从集合中取出一个新的元素值。放到只读变量中去,如果括号的整个表达式返回值为 trueforeach 块中的语句就能够执行。

一旦集合中的元素都已经被访问到,整个表达式的值为 false,控制流程就转到 foreach 块后面的执行语句。

具体的语法形式 如下:

1 foreach(数据类型 变量名 in 数组名)

2 {

3 //语句块;

4 }

注意:foreach 语句仅能用于数组、字符串或集合类数据类型。

举例如下:使用foreach遍历上一节中的数组

 

五、字符串分割

Split 方法用于按照指定的字符串来拆分原有字符串,并返回拆分后得到的字符串数组。

比如有一个字符串 “张三、吴四、黄五、王六”,如果想将其分割成单独的字符串,此时就可以使用string类的split方法。

举例如下:

六、结构体类型

结构体类型是一种自定义值类型,与类比较相似。

由于结构体类型是值类型,在使用时会比使用类存取的速度更快,但灵活性方面没有类好。

定义语法:

1 访问修饰符 struct 结构体名称

2 {

3 //结构体成员

4 }

其中:

1) 访问修饰符

通常使用 public 或者省略不写,如果省略不写,代表使用 internal来修饰。

如果结构体中的内容要被其他类中的成员访问,需要将其访问修饰符设置为 public

2) 结构体名称

命名规则通常和类的命名规则相同,即每个单词的首字母大写。

3) 结构体成员

包括字段、属性、方法以及事件等。但无法进行初始化操作。

在结构体中也能编写构造器,但必须带参数,并且必须为结构体中的字段赋初值。

结构体和类的区别如下表: 

结构体

允许不使用new对其实例化  

必须使用new实例化

没有默认构造方法

有默认构造方法

不能继承类

能继承类

不允许使用abstract、protected以及sealed修饰

允许使用abstract、protected以及sealed修饰

举例如下:

七、枚举类型

C#枚举类型和结构体类型都是特殊的值类型,应用也比较广泛。

枚举类型在定义时使用 enum 关键字表示,枚举类型的定义与类成员的定义是一样的,或者直接定义在命名空间中。

定义枚举类型的变量的语法形式如下:

1 访问修饰符 enum 变量名 : 数据类型

2 {

3 l,

4 2,

5 }

其中:

1) 访问修饰符

与类成员的访问修饰符一样,省略访问修饰符也是代表使用 private 修饰符的。

2) 数据类型

指枚举中值的数据类型。只能是整数类型,包括 byte、short、int、long 等。

3) 值1、值2、

……在枚举类型中显示的值。但实际上每个值都被自动赋予了一个整数类型值并且值是递增加1 的,默认是从 0 开始的,也就是值 1 的值是 0、值 2 的是 1。

如果不需要系统自动为枚举值指定值,也可以直接为其赋一个整数值

举例如下:

 

以上为我的C#中的数组内容,希望对每一位读者都有所帮助,同时我也期待有读者发表建议对我的内容补充和修改。后续能总结出比较完善的文献论文。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值