C#中数组的使用
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#中数组的使用的更多相关文章
- JavaScript中数组操作常用方法
JavaScript中数组操作常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2 ...
- jq中数组应用的错误
js中数组可以这样使用: <ul id="ul"> <li value="1">s</li> <li>f< ...
- C++程序设计(关于函数中数组传递的一点心得)
题目: 10个学生考完期末考试评卷完成后,老师需要划出及格线,要求如下: (1) 及格线是10的倍数: (2) 保证至少有60%的学生及格: (3) 如果所有的学生都高于60分,则及格线为60分: ...
- 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[ ...
- C#中数组Array、ArrayList、泛型List<T>的比较
在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...
- javascript中数组Array的方法
一.常用方法(push,pop,unshift,shift,join)push pop栈方法,后进先出var a =[1,2,3];console.log(a.push(40)); //4 返回数组的 ...
- C#中数组、ArrayList和List三者的区别
在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢. 数组 数组在C#中最早出现的.在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单. ...
- iOS: 使用KVO监听控制器中数组的变化
一.介绍: KVO是一种能动态监听到属性值的改变的方式,使用场景非常广泛,这里我只讲如何监听控制器ViewController中数组的变化. 二.了解: 首先我们应该知道KVO是不能直接监听控制器Vi ...
- Java中数组的特性
转载:http://blog.csdn.net/zhangjg_blog/article/details/16116613 数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具 ...
- 在java 中,数组与 List<T> 类型的相互转换
在java中,数组与List<T> 之前进行互相转换,转换方法可总结为以下几种: 一. 将 数组转换成List<T> 1. 使用 Collections 的addAll 方法 ...
随机推荐
- [Contest Hunter#17-C] 舞动的夜晚
[题目链接] http://contest-hunter.org:83/contest/CH%20Round%20%2317/%E8%88%9E%E5%8A%A8%E7%9A%84%E5%A4%9C% ...
- Hadoop一主一从部署(2)
Hadoop部署一主一从(2) 1.关闭防火墙和Linux守护进程 执行命令: iptables -F setenforce 0 2.对Hadoop集群进行初始化,在namenode(主机)上执行命令 ...
- POJ 1985 求树的直径 两边搜OR DP
Cow Marathon Description After hearing about the epidemic of obesity in the USA, Farmer John wants h ...
- C#:使用FastReport打印带图片传参模板的实现方法
大家都知道,C#打印图片可以直接调用PrintDocument控件的PrintPage事件,通过画刷对image对象直接进行绘制.但是这种方法存在局限,例如如果打印的图片需要按纸张大小进行缩放的话,那 ...
- resultType和resultMap区别,,,1-1一个订单只能对应一个用户,1对多,一个用户对应多个订单
-----------------1-多
- iOS网络——NSURLCache设置网络请求缓存
今天在看HTTP协议,看到了response头中的cache-control,于是就深入的研究了一下.发现了iOS中一个一直被我忽略的类——NSURLCache类. NSURLCache NSURLC ...
- jquery学习之$(document).ready()
参考资料: 1.W3School在线教程:http://www.w3school.com.cn/jquery/event_ready.asp 2.某人博客园:http://www.cnblogs.co ...
- list用法(用到了再补充)
之前学list吧,也知道很多,但是到用的时候却无从下手,还是不熟悉的缘故,看来基础知识应该再加强,要达到信手拈来的程度才行. 先说下list的特性:有序可重复,也可以存储多个空值. 我用到的方法: L ...
- Python之first script
1 A first script 1) script1.py - imports a Python module (libraries of additional tools) to fetch th ...
- End to End Sequence Labeling via Bi-directional LSTM CNNs CRF
来看看今日头条首席科学家的论文: End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF 使用LSTM方法进行序列标注,完成大规模标 ...