1、简单数组:

声明:

int[] myArray

初始化:

声明了数组后,就必须为数组分配内存来保存数组的全部元素。特别注意的是数组是引用类型。故须要使用new运算符来指定数组中元素的类型和数量来初始化数组的变量。

myArray = new int[4]

声明初始化合并:

int [] myArray = new int[4];

使用初始化器为数组的每一个元素赋值:

须要注意的是数组初始化器仅仅能在声明数组变量时使用,不能再声明数组变量之后使用

int [] myArray = new int[4]{2,3,4,5};

假设用花括号初始化数组。还能够不知道数组的大小,编译器会自己主动统计元素的个数:

int [] myArray = new int[]{2,3,4,5};

另一种更简单的方式:

int [] myArray = {2,3,4,5};

訪问数组元素: 通过索引器传递元素编号。就能够訪问数组;索引器总是以0开头。

假设使用错误的索引器值,就会抛出异常 IndexOutOfRangeException

声明一个包括两个对象的数组:

pulic class Person

{ public string FirstName;

public string LastName;

}

Person [] myPersons = new Person[2];

接下来必须注意的是:数值中的元素是引用类型。必须为每一个数组元素分配内存。若使用了数组中未分配内存的元素,就会抛出NullReferenceException异常。

myPersons[0] = new Person{FirstName = "wang", LastName = "moumou"};

myPersons[1] = new Person{FirstName = "wu", LastName = "meimei"};

相同,对于自己定义类型也能够使用初始化器:

Person [] myPerson2 = {

new Person{FirstName = "wang", LastName = "moumou"},

new Person{FirstName = "wu", LastName = "meimei"}

};

2、多维数组:

声明二维数组,须要在方括号里加上一个逗号;数组在初始化时应指定每一堆的大小

int [,] dim2 = new int[3, 3];

dim2[0,0] = 1;

dim2[0,1] = 2;

dim2[0,2] = 3;

dim2[1,0] = 4;

dim2[1,1] = 5;

dim2[1,2] = 6;

dim2[2,0] = 7;

dim2[2,1] = 8;

dim2[2,2] = 9;

声明三维数组, 须要在方括号中使用两个逗号

3、锯齿数组

比如:

1 2

3 4 5 6

7 8 9 int [][]

jagged = new int [3][];

jagged[0]=new int[2]{1,2};

jagged[1]=new int[4]{3,4,5,6};

jagged[2]=new int[3]{7,8,9};

C#中数组的使用的更多相关文章

  1. JavaScript中数组操作常用方法

    JavaScript中数组操作常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2 ...

  2. jq中数组应用的错误

    js中数组可以这样使用: <ul id="ul"> <li value="1">s</li> <li>f< ...

  3. C++程序设计(关于函数中数组传递的一点心得)

    题目: 10个学生考完期末考试评卷完成后,老师需要划出及格线,要求如下: (1) 及格线是10的倍数: (2) 保证至少有60%的学生及格: (3) 如果所有的学生都高于60分,则及格线为60分:   ...

  4. java中数组的相关知识

      1. 2.数组的命名方法 1)int[]ages=new int[5]; 2) int[]ages; ages=new int[5]; 3)int[]ags={1,2,3,4,5}; 4)int[ ...

  5. C#中数组Array、ArrayList、泛型List<T>的比较

    在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...

  6. javascript中数组Array的方法

    一.常用方法(push,pop,unshift,shift,join)push pop栈方法,后进先出var a =[1,2,3];console.log(a.push(40)); //4 返回数组的 ...

  7. C#中数组、ArrayList和List三者的区别

    在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢. 数组 数组在C#中最早出现的.在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单. ...

  8. iOS: 使用KVO监听控制器中数组的变化

    一.介绍: KVO是一种能动态监听到属性值的改变的方式,使用场景非常广泛,这里我只讲如何监听控制器ViewController中数组的变化. 二.了解: 首先我们应该知道KVO是不能直接监听控制器Vi ...

  9. Java中数组的特性

    转载:http://blog.csdn.net/zhangjg_blog/article/details/16116613 数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具 ...

  10. 在java 中,数组与 List<T> 类型的相互转换

    在java中,数组与List<T> 之前进行互相转换,转换方法可总结为以下几种: 一. 将 数组转换成List<T> 1. 使用 Collections 的addAll 方法 ...

随机推荐

  1. [JSOI2016]独特的树叶

    https://zybuluo.com/ysner/note/1177340 题面 有一颗大小为\(n\)的树\(A\),现加上一个节点并打乱编号,形成树\(B\),询问加上的节点最后编号是多少? \ ...

  2. 803E

    dp dp[i][j]表示到了i赢和输的差为j 如果这位是?向dp[i-1][j-1],dp[i-1][j],dp[i-1][j+1]转移,如果是W向dp[i-1][j-1]转移,如果是L向dp[i- ...

  3. iOS社会化分享(干货)

    一.苹果原生集成的社会化分享 1.哪些平台 (1)Twitter (2)FaceBook (3)Flickr (4)Vimeo (5)新浪微博  :iOS6 (6)腾讯微博 : iOS7 2.框架 : ...

  4. [Apple开发者帐户帮助]四、管理密钥(3)撤消,编辑和下载密钥

    创建密钥后,您可以撤消,编辑或下载密钥.您只能下载一次密钥.私钥在iOS,tvOS和watchOS上的应用程序之间共享. 所需角色:帐户持有人或管理员. 撤销密钥 如果撤消密钥,它将变为无效并影响使用 ...

  5. 数据通讯与网络 第五版第24章 传输层协议-UDP协议部分要点

    24.1 介绍 本章节主要集中于传输层协议的解读,图24.1展示TCP.UDP.SCTP在TCP\IP协议栈的位置 24.1.1 服务(Service) 每个协议都提供不同的服务,所以应该合理正确的使 ...

  6. 语法错误1:TabError: Inconsistent use of tabs and spaces in indentation

    如图错误: 出错原因: 由于写代码过程用的tab缩进 解决方法: 把tab缩进改用空格缩进

  7. 工具分享2:Python 3.6.4、文本编辑器EditPlus、文本编辑器Geany

    工具官网下载地址: https://www.python.org/downloads/ python 3.6.0下载链接: 链接:https://pan.baidu.com/s/1snuSxsx 密码 ...

  8. unity3d引擎中slua的使用

    SLua是开源软件,没有反射,没有额外GC,采用静态代码生成,可以用于游戏核心逻辑,完整支持4.6+ UI系统. 1.下载安装 http://www.slua.net/ https://github. ...

  9. java selenium启动火狐浏览器报错:Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: VISTA Build info: version: '3.8.1', revision: '6e95a6684b', time: '2017-12-01T19:05:14.666Z

    Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: VISTA Build in ...

  10. WebGL画点程序v1

    本文程序实现画一个点的任务,如下图.其中,点的位置直接给定("硬编码")在顶点着色器中. 整个程序包含两个文件,分别是: 1. HelloPoint1.html <!DOCT ...