C#数组知识总结

数组:

从Array类派生的,一组数据类型相同的变量组合。
一种空间连续的数据结构。
元素通过索引(位置的序号)进行操作。

一:语法:

语法声明:数组类型[] 数组名;

二:初始化:

初始化:数组名 = new 数据类型[容量];
初始化的元素类型与声明时的类型必须相同。
数组初始化后,内存中存储该数据类型的默认值:
	·整形为0;
	·整形为0.0;
	·char为\0;
	·string为 null;
	·bool为false;

三:赋值:

1:声明+赋值:
	语法∶
	数据类型 [] 数组名={元素1,元素2,...};
		例:int[] array01 = {1,2,3,4,5};
	元素个数即为数组长度
	程序员可以省略初始化,但编译器内部仍然会"new 数据类型[]”。
2:初始化+赋值:
	可以在数组初始化的同时对元素进行赋值。
	语法:
	数据类型 [] 数组名 = new 数据类型{元素1,元素2,...};
		例:
		int[] array01 = new int[]{ 1,2,3,4,5};
		string[] array02 = new string[] {"a", "b","c"};
	初始化时[]内也可以填入数组长度,但必须与所赋值的元素总数一致。
3:声明+初始化+赋值:
	数据类型 [] 数组名 = new 数据类型{元素1,元素2,...};

四:常用方法:

数组长度:数组名.Length
清除元素值:Array.Clear
复制元素:Array.copy   数组名.CopyTo
克隆:数组名.Clone
查找元素:Array.IndexOf ; Array.LastIndexOf
排序:Array.Sort
反转:Array.Reverse

附:foreach方法:

foreach是一种更简单更明了的读取数组元素的语句。
1:局限性:
	只能读取全部元素(语句本身)
	不能修改元素
	只能遍历实现lenumerable接口的集合对象
2:语法:
foreach(元素类型 变量名 in 数组名称)
{
	变量名即数组每个元素
}
例:
int [] array = new int[]{3,21,5,1};
foreach (int item in array)
{
	Console.WriteLine(item);
}	

附:random.Next()使用方法:

 static Random random = new Random();这句话放置于类内方法外
1.random.Next() :返回非负的一个随机数;
2.random.Next( MaxValue):返回一个小于所指定最大值的非负随机数
3.random.Next( minValue , maxValue ):返回一个指定范围内的随机数,左闭右开。
实用实例:
	int number =  random.Next( 1 , 10 );

五:多维数组:

具有两个或多个索引的数组。
语法∶
1:声明+初始化
	数据类型[] 数组名 = new 数据类型[行数,列数];
	例:string[,] array01 = new string[3,2];
2:初始化+赋值
	数组名 = new 数据类型 {{元素1,元素2},{元素3,元素4}}
	例:int[] array02 = new int[,]{{1,2},{3,4}};
3:读写元素
	数组名[行索引,列索引]
4:遍历:
	组数组名.GetLength(0)获取行数长度,数组名.GetLength(1)获取列数长度

六:交错数组:

元素为数组的数组,每个元素都是一个新的一位数组。
语法:
1:定义
	数据类型[][] 数组名 = new 数据类型[元素总数][];
	例:string[][] array = new string[3][];
2:赋值
	数组名[索引]= new 数据类型[子元素数];
	例:array[0] = new string[2];
3:读写元素
	数组名[元素索引][子元素索引]
4:获取元素数
	交错数组名.Length

七:参数数组:

在方法形参中通过关键字params定义。
对于方法内部而言∶就是个普通数组
对于方法外部(调用者)而言∶方法调用者可以传递数组,也可以传递一组数据类型相同的变量,甚至可以不传递参数。
注意:
参数数组必须在形参列表中的最后一位。只能在一维数组上使用params关键字。
WriteLine中使用占位符,就是通过参数数组实现的。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值