首页 > 代码库 > 塔 · 第 一 条 约 定

塔 · 第 一 条 约 定

Array类:

1、关于Array类的一些小知识:

             <1>数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合。

             <2>声明数组变量并不是声明 number0、number1、...、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用                   numbers[0]、numbers[1]、...、numbers[99] 来表示一个个单独的变量。数组中某个指定的元素是通过索引来访问的。

             <3>所有的数组都是由连续的内存位置组成的。最低的地址对应第一个元素,最高的地址对应最后一个元素。

2、Array类的声明

           在 C# 中声明一个数组,可以使用下面的语法:

        datatype[] arrayName;  //datatype是数据类型的意思,比如int double等

 

3、Array类的初始化

             声明一个数组不会在内存中初始化数组。当初始化数组变量时,可以赋值给数组

              数组是一个引用类型,所以您需要使用 new 关键字来创建数组的实例。

例如:

              double[] balance = new double[10];

 

4、Array类的赋值

<1>可以通过使用索引号赋值给一个单独的数组元素,比如:

double[] balance = new double[10];
balance[0] = 4500.0;

<2>可以在声明数组的同时给数组赋值,比如:

double[] balance = { 2340.0, 4523.69, 3421.0};

<3>也可以创建并初始化一个数组,比如:

int [] marks = new int[5]  { 99,  98, 92, 97, 95};

<4>在上述情况下,也可以省略数组的大小,比如:

int [] marks = new int[]  { 99,  98, 92, 97, 95};

您也可以赋值一个数组变量到另一个目标数组变量中。在这种情况下,目标和源会指向相同的内存位置:

int [] marks = new int[]  { 99,  98, 92, 97, 95};
int[] score = marks;

当您创建一个数组时,C# 编译器会根据数组类型隐式初始化每个数组元素为一个默认值。例如,int 数组的所有元素都会被初始化为 0。

5、Array类的常用属性

 

序号属性 & 描述
1 IsFixedSize
获取一个值,该值指示数组是否带有固定大小。
2 IsReadOnly
获取一个值,该值指示数组是否只读。
3 Length
获取一个 32 位整数,该值表示所有维度的数组中的元素总数。
4 LongLength
获取一个 64 位整数,该值表示所有维度的数组中的元素总数。
5 Rank
获取数组的秩(维度)。

     用例:

int[] marks = new int[] { 99, 98, 92, 97, 95 };
            bool a = marks.IsFixedSize;
            bool b = marks.IsReadOnly;
            int c = marks.Length;
            int d = marks.Rank;
            Console.WriteLine(a);
            Console.WriteLine(b);
            Console.WriteLine(c);
            Console.WriteLine(d);
            Console.ReadKey();


//输出结果分别是 True False 5 1

 

6、Array类的常用方法

1 Clear
根据元素的类型,设置数组中某个范围的元素为零、为 false 或者为 null。
2 Copy(Array, Array, Int32)
从数组的第一个元素开始复制某个范围的元素到另一个数组的第一个元素位置。长度由一个 32 位整数指定。
3 CopyTo(Array, Int32)
从当前的一维数组中复制所有的元素到一个指定的一维数组的指定索引位置。索引由一个 32 位整数指定。
4 GetLength 
获取一个 32 位整数,该值表示指定维度的数组中的元素总数。
5 GetLongLength
获取一个 64 位整数,该值表示指定维度的数组中的元素总数。
6 GetLowerBound
获取数组中指定维度的下界。
7 GetType
获取当前实例的类型。从对象(Object)继承。
8 GetUpperBound
获取数组中指定维度的上界。
9 GetValue(Int32)
获取一维数组中指定位置的值。索引由一个 32 位整数指定。
10 IndexOf(Array, Object)
搜索指定的对象,返回整个一维数组中第一次出现的索引。
11 Reverse(Array)
逆转整个一维数组中元素的顺序。
12 SetValue(Object, Int32)
给一维数组中指定位置的元素设置值。索引由一个 32 位整数指定。
13 Sort(Array)
使用数组的每个元素的 IComparable 实现来排序整个一维数组中的元素。
14 ToString
返回一个表示当前对象的字符串。从对象(Object)继承。

塔 · 第 一 条 约 定