学习Visual C#数组速成法

开发 后端
本文从一维数组、多维数组、交错数组、对象数组等方面介绍了Visual C#数组的相关知识。

存储相关数据项组是大多数软件应用程序的一项基本要求;这可以通过使用Visual C#数组与集合这两种主要方式来实现。

Visual C#数组

数组是相同类型的对象的集合。由于数组几乎可以为任意长度,因此可以使用数组存储数千乃至数百万个对象,但必须在创建数组时就确定其大小。数组中的每项都按索引进行访问,索引是一个数字,指示对象在数组中的存储位置或槽。数组既可用于存储 引用类型,也可用于存储 值类型。

一维数组

数组是一个经过索引的对象集合。一维对象数组的声明如下:

type[] arrayName;

一般会同时初始化数组中的元素,如下所示:

C#

  1. int[] array = new int[5]; 

数值数组元素的默认值为零,引用元素的默认值为 null,但您可以在创建数组的过程中初始化值,如下所示:

C#

  1. int[] array1 = new int[] { 1, 3, 5, 7, 9 }; 

或者甚至这样来初始化:

C#

  1. int[] array2 = {1, 3, 5, 7, 9}; 

数组的索引从零开始,因此数组中的***个元素为元素 0。

C#

  1. string[] days = {"Sun""Mon""Tue""Wed""Thr""Fri""Sat"}; System.Console.WriteLine(days[0]); // Outputs "Sun"  

多维数组

从概念上来说,两维数组类似于网格,三维数组则类似于立方体。

C#

Visual C#数组与集合代码 

交错数组

多维数组的一种变体是交错数组,即由数组组成的数组。交错数组是一维数组,且每个元素自身是一个数组。作为元素的数组无需均为相同的大小。

声明交错数组的方式如下:

C#

  1. int[][] jaggedArray = new int[3][]; 

这样做会创建一个有 3 个数组的数组。这些数组可以按如下方式初始化:

C#

  1. jaggedArray[0] = new int[5]; jaggedArray[1] = new int[4]; jaggedArray[2] = new int[2]; 

使用 foreach 语句

foreach 语句通常用来访问数组中存储的每个元素:

C#

Visual C#数组与集合

对象数组

创建对象数组(而非创建像整数这样的简单数据类型的数组)的过程分为两个部分。首先声明数组,然后必须创建存储在数组中的对象。本示例创建一个定义一个音频 CD 的类。然后创建一个存储 20 个音频 CD 的数组。

C#

Visual C#数组与集合 

对于使用 C# 存储数据集而言,Visual C#数组只是众多选择中的一种。而具体的选择取决于若干因素,如操作或访问项所要采取的方式。例如,如果需要在集合的开头或中间插入项,则“列表”的速度一般比数组快。其他类型的集合类包括映射、树和堆栈,每种类型均有各自的优点。有关更多信息,请参见 System.Collections 和 System.Collections.Generic。

下面的示例显示如何使用 List< (Of < (T>)>) 类。注意,与 Array 类不同,可以在列表中间插入项。本示例限制列表中的项必须是字符串。

C#

Visual C#数组与集合 

【编辑推荐】

  1. 看看C# Hook 如何实现
  2. 学习C#虚函数实例演示
  3. 一个C#数据访问XML的例子
  4. C#特性之通俗演义
  5. 探寻C# 3.5新特性
责任编辑:book05 来源: 新浪博客
相关推荐

2009-02-23 10:58:58

DBA求职准备

2010-04-01 13:26:09

Oracle DBA

2009-08-24 15:38:21

C# 泛型数组

2009-08-10 16:47:45

Visual C#数据

2009-08-19 16:50:32

Visual C#C#语言特性

2009-08-20 11:03:34

Visual C#使用

2009-08-18 16:31:19

Visual C#编写

2009-08-24 09:25:18

Visual C# ..NET应用程序

2009-08-07 10:53:59

Visual C#Excel

2009-08-10 10:43:18

Visual C#快捷

2009-09-02 16:21:17

Visual BasiC#语言

2009-08-27 16:11:03

C# delegateC# event

2009-09-17 16:53:15

C#数组

2009-08-26 13:07:07

C#交错数组

2009-08-07 11:26:53

C#数组结构

2009-09-02 10:58:02

C#动态数组

2009-08-31 14:45:07

Visual C# 3

2010-04-01 09:06:05

C# 2010

2009-08-24 15:58:00

Visual C#生成

2010-07-09 11:15:55

Visual C# U
点赞
收藏

51CTO技术栈公众号