C#中数组如何赋值
2013-10-25 16:00
176 查看
C#中数组如何赋值
声明数组之后,可以立即为其填充值。方法是在一对大括号中,使用一个以逗号分隔的数据项列表。下面声明了一个字符串数组,然后在一对大括号中指定了9种不同的编程语言的名称。string[] languages = { "C#", "COBOL", "Java","C++", "Visual Basic","Pascal","Fortran", "Lisp", "J#"};
在这个以逗号分隔的列表中,第一项成为数组的第一个元素,第二项成为第二个元素,依此类推。我们使用大括号来定义一个数组字面量。只有在同一个语句中声明并赋值时,赋值语法才可用。如果是在声明了之后才进行赋值,则需要使用new关键字和对应的数据类型。
string[] languages; languages = new string[]{"C#", "COBOL", "Java", "C++", "Visual Basic", "Pascal", "Fortran", "Lisp", "J#" };
C#还支持将new关键字作为声明语句的一部分使用。
string[] languages = new string[]{"C#", "COBOL", "Java","C++", "Visual Basic", "Pascal","Fortran", "Lisp", "J#"};
使用new关键字是告诉“运行时”为数据类型分配内存。它指示“运行时”实例化数据类型——本例是一个数组。
任何时候将new关键字作为数组赋值的一部分使用,都可以同时在方括号内指定数组的大小。
string[] languages = new string[9]{"C#", "COBOL", "Java","C++", "Visual Basic", "Pascal","Fortran", "Lisp", "J#"};
在初始化语句中,数组的大小和大括号中包含的元素数量必须匹配。除此之外,也可以分配一个数组,但不指定它的初始值。
string[] languages = new string[9];
分配一个数组但不指定初始值仍然会初始化每个元素。“运行时”会将每个元素初始化为它们的默认值,如下所示:
引用类型(比如string)初始化为null;
数值类型初始化为零;
bool初始化为false;
char初始化为\0。
其结果就是,在使用之前,不必单独对数组的每个元素进行赋值。
在C# 2.0中,可以使用default()运算符来判断一种数据类型的默认值。default()获取一个数据类型作为参数。例如,default(int)会返回0,而default(char)会返回\0。
由于数组大小不被作为变量声明的一部分,所以可以在运行时指定数组大小。
string[] groceryList; System.Console.Write("How many items on the list? "); int size = int.Parse(System.Console.ReadLine()); groceryList = new string[size];
C#采取类似的方式来处理多维数组。要以逗号分隔每一维上的大小。
int[,] cells = new int[3,3];
还可以初始化成。
int[,] cells = { {1, 0, 2}, {1, 2, 0}, {1, 2, 1} };
初始化采用的模式是一个有3个int[]类型的元素的数组,每个元素都具有相同的大小。在本例中,这个大小是3。注意,每个int[]元素的维必须是完全一致的。
相关文章推荐
- C#中数组如何赋值
- C#中数组如何赋值
- 在PHP里.如何定义二维数组和赋值.并且把数组中的值填充到table中。
- 如何让boost::any支持字符数组赋值
- 如何用C#求两数组的交集和并集
- TCHAR 生命长度固定数组如何赋值
- 在C#中如何打印出一个数组,以字符串的方式
- 在PB中如何使用一个字符串给一个字符串数组赋值
- [Excel VBA] 在VBA中如何将SQL得到的数据直接赋值到数组?
- C#为字符串数组动态赋值的问题
- Verilog中如何对数组赋值(存储器memory详解)
- 在C#中如何比较两个byte[]数组相等
- C#中 combobox 如何绑定数组
- C# 一个数组未赋值引发的错误
- c#中如何将一个string数组转换为int数组
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作
- C#中如何获取一个二维数组的两维长度,即行数和列数?以及多维数组各个维度的长度?
- C#随机不重复给数组赋值1-100并排…
- 如何用C#将bmp图的位图数据读到数组中?
- 如何将数组转换为多个参数赋值给另一个函数或方法