在C#中,数组和集合是两个非常重要的概念,这两种类型都可以存储多个数据,在程序中有着非常多的应用。
数组
数组是一组具有相同类型和名称的变量的集合,如一组整数、一组字符等。
一个定义的数组中包含以下几个要素:
- 元素类型
- 数组的维数
- 每个维数的上下限
数组的声明
语法
数组类型[ ] 数组名;
注意:在C#中只能使用上面的那种形式,不能把方括号放在数组名的后面
Int[] score; //存储成绩,类型为整型
Double[ ] height; //存储身高,类型为双精度型
String[] name; //存储姓名,类型为字符串型
注意:在声明数组变量时千万不要漏写[ ],并且方括号要放在数据类型后面。另外,在声明时不需要规定数组的长度。
Int score[5]; //错误,声明不需要规定数组长度
数组大小
语法
数组名=new 数据类型[数组长度]; //分配空间
Int[] score; //存储成绩,类型为整型
Score=new int[5]; //创建一个含有5个元素的整型数组
也可以在声明数组时就给期分配空间。如:
数据类型[ ] 数组名=new 数据类型[数组长度];
注意:一旦声明了数组的大小,就不能再修改。
数组的遍历
采用索引访问数组中所有的元素是及其繁琐和复杂的,针对这种问题C#提供了foreach语句以实现数组的遍历功能。使用foreach语句访问数组中的每个元素不需要确切的知道每个元素的索引。
using System;
using System.Collections.Generic;
using System.Text;
namespace Test
{
class Program
{
static void Main(string[] args)
{
int[] myArray =new int[5]{1,2,3,4,5};
//采用foreach语句对myArray进行遍历
Foreach(int number in myArray)
{
Console.WriteLine(number);
}
Console.Readline();,
}
}
}
foreach语句可以方便的遍历到数组中的每一个元素,上述代码的运行结果如下:
1
2
3
4
5
数组的排序
数组排序指的是将数组中的元素按照一定的顺序,如递增或递减规则,重新排列数组中的所有元素。可以用c#中提供的Array类和冒泡排序来进行这些操作。
这里简单介绍几种排序方法:
1、 Sort方法排序
C#中提供了用于排序的算法Array.Sort和Array.Reverse。Array.Sort方法用于对一维Array对象中的元素进行排序。我们可以自己规定用法来排序,比如从小到大,从大到小等等。
2、 冒泡排序
从最底层的元素开始,与其紧挨着的上一个元素比较,如果下面的元素小于上面的元素,就互相交换,否则保持原样。就这样不断重复,最后最小的元素抵达了顶端。这时,新一轮的冒泡又开始了,也是从最低端元素开始比较,重复前面的冒泡过程,就可以将第二小的元素放到第二个位置上,如此不断重复,知道所有的元素排序。