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 方法 ...
随机推荐
- EOJ 1501/UVa The Blocks Problem
Many areas of Computer Science use simple, abstract domains for both analytical and empirical studie ...
- Java数据库编程及Java XML解析技术
1.JDBC概述 A. 什么是JDBC? Java DataBase Connectivity:是一种用于执行SQL语句的Java API,它由一组用Java语言编写的类和接口组成.通过这些类和接口 ...
- Spell checker(串)
http://poj.org/problem?id=1035 题意:给定一个单词判断其是否在字典中,若存在输出"%s is correct",否则判断该单词删掉一个字母,或增加一个 ...
- 3个不常用的HTML标签
html标签众多,在HTML手册里你可以都查到.但有的HTML标签你可能从未使用过.不是因为你欠缺学习精神,而是它们确实用处不大.如果你有探索精神,那就接着往下看吧. 第一个:<abbr> ...
- python请求服务器图片并下载到本地磁盘
>>> import os >>> os.getcwd() 'C:\\Python33' >>> os.chdir('E:\\python\\mm ...
- B - Alyona and mex(构造)
Problem description Alyona's mother wants to present an array of n non-negative integers to Alyona. ...
- Struts2 在拦截器中向Action传参
struts.xml配置文件: <package name="system-default" extends="struts-default" abstr ...
- Django学习案例一(blog):五. 开发主页(博客列表展示)
主页是一个“博客列表”页.博客要按发布时间的倒序来排列,每个博客都要包含标题.作者.分类.发布时间的显示(年-月-日 时:分)及节选的正文内容(前 100 个字).点击单独的博客可以进入其详情页. 1 ...
- Android Retrofit 2.0文件上传
Android Retrofit 实现(图文上传)文字(参数)和多张图片一起上传 使用Retrofit进行文件上传,肯定离不开Part & PartMap. public interface ...
- 关于ListView中item与子控件抢夺焦点的解决方法
1.在开发中,listview可以说是我们使用最频繁的控件之一了,但是关于listview的各种问题也是很多.当我们使用自定义布局的Listview的时候,如果在item的布局文件里面存在Button ...