浅析C#定义整型数组

开发 后端
本文介绍C#定义整型数组可以是一维的也可以是多维的,同样也支持矩阵和参差不齐的数组。定义多维数组的方式是[,,]。

C#中数组是引用类型,C#定义整型数组方式是:

int [] intArray = {1,2,3};或int [] intArray = new int[10];

而C++中定义整型数组的方式是:

int intArray[] = {1,2,3};或int * intArray = new int[10];

C#定义整型数组可以是一维的也可以是多维的,同样也支持矩阵和参差不齐的数组。

注意:定义多维数组(矩阵)的方式是[,,]而定义多维“参差矩阵”的方式是[][]。另外,new关键字的使用并不一定表示对象是动态分配的(进入栈中)。

下面是C#中(一维)多维数组常见的定义方式:

  1. int []a1;   //定义一维数组  
  2. int [,]a2;  //定义二维数组  
  3. int [,,]a3; //定义三维数组  
  4. int []a1 = new int [10];       //定义一维数组深度  
  5. int [,]a2 = new int [10,20];     //定义二维数组深度  
  6. int [,,]a3 = new int [10,20,30]; //定义三位数组深度  
  7. int []a1 = new int []{1,2,3};       //初始化  
  8. int [,]a2 = new int [,]{{1,2,3},{4,5,6}}; 

还可以定义“参差不齐”的数组:

  1. int [][]var = new int [3][];  
  2. var[0] = new int[]{1,2,3};  
  3. var[1] = new int[]{1,2,3,4,5,6};  
  4. var[2] = new int[]{1,2,3,4,5,6,7,8,9}; 

注意,int [,]a和int [][]a的区别:前者定义了一个二维固定数组,后者定义了一个二维可变数组。只是它们都还没被分配空间和初始化。int [][]var = new int[3][4];是错误的。

以下错误:

  1. class Test  
  2. {  
  3. static void F(int []arr){}  
  4. static void Main()  
  5. {  
  6. F({1,2,3});//出错!{1,2,3}并非有效表达式。  
  7. }  
  8. }  
  9.  
  10. class Test  
  11. {  
  12. statci void F(int []arr){}  
  13. static void Main()  
  14. {  
  15. F(new int []{1,2,3});  
  16. }  

以上介绍C#定义整型数组

【编辑推荐】

  1. C#记忆功能的地址栏控件
  2. 描述C#调用外部进程
  3. C#语言操纵数据库事务
  4. 概述C#语言异常处理
  5. 简单介绍C#数组和函数
责任编辑:佚名 来源: 博客园
相关推荐

2009-08-26 13:07:07

C#交错数组

2009-08-06 10:14:15

C#引用类型数组

2009-08-27 17:59:56

C#接口定义

2009-09-02 10:58:02

C#动态数组

2009-08-28 14:25:57

C# byte数组

2009-09-18 10:58:31

C#数组操作

2009-09-28 14:45:22

C#接口的定义

2009-09-23 09:36:34

C#数组

2009-08-31 16:37:20

C#接口定义

2009-09-02 16:30:20

C#定义数组

2009-08-13 13:03:52

C#结构体数组

2009-09-17 15:39:56

C#数组初始化

2009-08-17 18:34:50

C# ChangeCo

2009-08-14 17:45:52

C# ArrayLis

2009-08-07 17:25:37

C# SortedLi

2009-08-25 17:59:49

C#入门

2009-09-02 18:41:18

C#定义动态控件数组

2009-08-18 10:30:30

C#枚举

2009-08-04 09:30:33

C#调用ImageAn

2009-07-31 16:00:30

C#函数重载
点赞
收藏

51CTO技术栈公众号