Array提供创建,操作,搜索和排序数组的方法,因而在公共语言运行库中用作所有数组的基类但是,只有系统和编译器能够从 Array 类显式派生。用户应当使用由语言提供的数组构造。下面就是数组一些方法的使用:
ArrayList al = new ArrayList(40);//普通的实例化类,形式参数就是定义的参数 实参就是调用的参数 al.Add(1);al.Add("2");
//al.Add(new Program());//添加对象
al.Add("a");
al.Add("b");
al.Add("c");
al.Add("d");
al.Add("e");
al.Add("f");
foreach (object o in al)
{
Console.WriteLine(o);
}
Console.WriteLine("---------------------------------------------------------");
//Console.WriteLine("al {0}.", al.IsFixedSize ? "a" : " t");//IsFixedSize是判断一个数组是否有固定的大小,如果为true,则返回a,false返回t.
//Console.WriteLine(al.Capacity);//满足一个集合后 在增加元素是集合就会翻倍的增加(第一个集合的长度为4容量也为4,超过4时就会变成8相对容量也变成8)
//al.Add("aaaa");
//al.Add("qqqqq");
//int[] arring = { 1, 2, 3, 4, 0, 34, 56, 888, 3 };
//al.AddRange(arring);
//al.Insert(0, 8);//在指定的位置添加元素,顶替原先位置的值
//al[3] = "aaa";//往指定的位置加入元素,替代原来的值
for (int j = 0; j < al.Count; j++)
{
Console.WriteLine(al[j]);
}
//al.Insert(6,"yuyuou");
//foreach (var v in al)
//{
// Console.WriteLine(v);
//}
//al.Remove(1);//移除数组中的值
//Console.WriteLine(al.Count);
//al.RemoveAt(1);//通过数组的下标来移除数组中的
//al.Sort();//排序
//al.Reverse();//逆序
//foreach (object i in al)
//{
// if (al.Capacity > 0)//数组al是否包含有元素
// {
// Console.WriteLine(i);
// Console.WriteLine("添加成功");
// }
// else
// {
// Console.WriteLine("aaaa");
// }
// Console.WriteLine(i.GetType().ToString());//数组中元素的类型
// Console.WriteLine("----------------------------------------------");
//}
以上是一维数组数组的定义和方法,数组中还有二维数组和多维数组,以及交错数组,他们的用法大致相同,定义二维数组和一维没有太大的差别,看一下二维数组的定义和初始化,遍历
int[,] arr = { { 1, 2 }, { 3, 4 } };
for (int i = 0; i < arr.GetLength(0); i++)
{
for (int j = 0; j < arr.GetLength(1); j++)
{
Console.WriteLine(arr[i,j]);
}
}
交错数组是元素为数组的数组,交错数组元素的维度和大小可以不同,交错数组有时称为数组中的数组,看一下交错数组的定义和遍历
int[][] arr = new int[2][] { new int[] { 1, 2, 3 }, new int[] { 4 } };
for (int i = 0; i < arr.Length; i++)
{
for (int j = 0; j < arr[i].Length; j++)
{
Console.WriteLine(arr[i][j]);
}
}
foreach (int[] arrint in arr)
{
foreach (int i in arrint)
{
Console.WriteLine(i);
}
}
转载于:https://blog.51cto.com/lyh7898/360581