C#数组的声明
C#一维数组的声明方式
int[] myArray;
string[] myStrArr;
但是在访问数组之前必须初始化。
C#数组的初始化方式有两种,第一种是在声明数组的时候为数组的元素赋初值:
int[] myArray = { 5, 9, 15, 22, 30 };
string[] myStrArr = { "diagram", "league", "brambling" };
另一种方式需要在声明数组时指定数组的大小(即数组的长度,数组元素的个数):
int[] myArray = new int[5];
string[] myStrArr = new string[3];
当然不一定非是数值,也可以是带有常量(const)关键字的变量:
const int arrSize = 5;
int[] myArray = new int[arrSize];
string[] myStrArr = new string[arrSize];
访问数组元素可以通过for循环和数组元素对应的下标:
int[] myArray = { 5, 9, 15, 22, 30 };
for (int i = 0; i < myArray.Length; i++)
{
Console.WriteLine("数组长度为{0},第{1}个元素是:{2}", myArray.Length, i, myArray[i]);
}
Console.ReadKey();
还可以用foreach访问数组的每个元素,但foreach循环对数组的内容进行只读访问,所以不能改变任何元素的值:
int[] myArray = { 5, 9, 15, 22, 30 };
foreach (int num in myArray)
{
Console.WriteLine("数组元素为:{0}", num);
}
Console.ReadKey();
二维数组:
二维数组最简单的声明方式:
int[,] myIntArray;
string[,] myStrArray;
如下声明了一个4维数组:
int[,,,] myIntArray;
多维数组的声明方式只需要在二维数组的基础上添加多个逗号。
二维数组的初始化方式:
int[,] myIntArray = { { 1, 4, 7 }, { 2, 5, 8 }, { 3, 6, 9 } };
string[,] myStrArray = new string[3, 2];
二维数组一样通过下标访问数组元素:
myIntArray[1,2]; // 8
myIntArray是一个3行3列的二维数组,所以myIntArray[1,2]中的1指的是数组myIntArray的第二个嵌套数组(数组下标识从0开始,所以1就是第二个了),myIntArray[1,2]中的2指的是数组myIntArray的第二个嵌套数组中的第三个元素,所以其值是8。
多维数组:
多维数组的两种声明和初始化方式,第一种:
int[][] myIntArrays = new int[2][];
myIntArrays[0] = new int[3];
myIntArrays[1] = new int[4];
另一种方式:
int[][] myIntArrays = {new int[]{1,2,3},new int[]{2,3,4,5}};
访问多维数组的元素可以用foreach循环:
int[][] myIntArrays = {new int[]{1,2,3},new int[]{2,3,4,5}};
foreach (int[] numArr in myIntArrays)
{
foreach (int num in numArr)
{
Console.WriteLine("数组元素为:{0}", num);
}
}
输出结果为:
数组元素为:1
数组元素为:2
数组元素为:3
数组元素为:2
数组元素为:3
数组元素为:4
数组元素为:5
由此可以看出访问多维数组元素的顺序。
第一次发博客,博客是最近几天才开的,原因只是因为自己太菜了,所以想记录下平时学习的一些东西。如果能帮到他人,我将深感荣幸!
C#数组的声明的更多相关文章
- 关于offsetWidth,offsetHeight,offsetTop,offsetLeft和二维数组的声明
offsetWidth,offsetHeight,offsetTop,offsetLeft 为只读状态,返回的值是int形式 只读形式即不能通过修改其值的大小. 想要修改某元素的这些值的大小(widt ...
- js数组的声明与应用
js数组的声明与应用 数组:一种容器,存储批量数据.JavaScript是一种弱类型语言.什么是弱类型,就是变量可以存储多种类型变量的引用不会报错.所以js数组可以存储不同的数据. 一.数组的作用:只 ...
- Java 声明和访问控制(一) 数组的声明 private可以修饰类吗
数组的声明: int []a[] = new int[4][];//是正确的 int[] array = new int[2]{1,2};//是错误的 数组的长度是不可改变的,不能通过任何方式改变大小 ...
- 关于Delphi中二维数组的声明和大小调整(对非基本类型数据,小心内存泄漏)
这是一个实例: procedure TMainForm.Button1Click(Sender: TObject);var arr:array of array of string;begin s ...
- java数组的声明由几种方式
数组的声明由几种方式: 1,String []a = new String[length];再赋值 a[0]=?;....... 2,new完就直接初始化: String []a = new Stri ...
- Java数组的声明和遍历
Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java 语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如 n ...
- java数组的声明、创建和遍历
一.数组的声明.创建 1.一维数组 先是声明 dataType[] arrayRefVar; // 首选的方法 数据类型[] 数组名; dataType arrayRefVar[]; // 效果相同, ...
- C++二维数组讲解、二维数组的声明和初始化
我们知道,一维空间是一条线,数学中用一条数轴来表达:二维空间是一个平面,数学中用平面坐标系来表达.那么二维数组又是什么样的呢? 线与面 我们用一个下标来描述一维数组中的某个元素,就好像在用数描述一条线 ...
- AJPFX关于一维数组的声明与初始化
一维数组:可以理解为一列多行.类型相同的数据,其中每个数据被称为数组元素:一维数组的声明方式: type varName[]; 或 type[] varName;(推荐) ...
随机推荐
- Python中的list和tuple
list使用方括号[ ]表示: >>> classmates = ['Michael', 'Bob', 'Tracy'] >>> classmates ['Mi ...
- java分享第六天(冒泡排序)
冒泡排序 基本思想: 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒.即:每当两相邻的数比较后发现它们 的排序与排序要求 ...
- win10启动无法进入桌面
情况: windows启动显示欢迎界面 无法进入桌面(可以win+E进入资源管理器,可以ctl+alt+delete进入任务管理器) 重启依然无法进入 解决: 重启 按f8 进入安全模式 再次重启OK ...
- &与&&,|与||
http://bokeid.blog.163.com/blog/static/93102786201181710259178/ &&:逻辑运算符,连接两个或多个表达式,结果为TRUE或 ...
- #20145205 《Java程序设计》第4周学习总结
教材学习内容总结 1.面对对象中,因为我们需要设计多个模块,但是有不能像C语言中那样进行分块设计,所以我们用父类和子类进行模块的设计,我们在设计一个较大的程序时,在一个项目中建立不同的文件,用关键字e ...
- 【PC网站前端架构探讨系列】关于中小型PC网站前端架构方案的讨论与实践
目 录 1.遇到的问题 2.目标 3.探讨 4.架构设想 5.流程 6.初步实现 7.存在问题 8.最后 遇到的问题 我在这个系列上篇文章 已经讲解并开始逐步应用模块化思想,不知大家还记不记得,题 ...
- Android开发使用TotalControl调试遇到的问题(备注)
背景:Android开发,使用TotalControl控制手机进行调试. 过程:Eclipse调试一直正常,某天下午突然提示:无法启动ADB.exe,请确认是否在对应的路径下. 怀疑是自己程序写的有问 ...
- 史上自定义 JavaScript 函数Top 10
http://www.dustindiaz.com/top-ten-javascript/ 发布:wpulog | 发布时间: 2010年4月9日 10个被使用的最普遍的用户自定义函数,add ...
- HTML 播放器 写给自己
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- IOS 开发教程
http://www.raywenderlich.com/category/ios http://www.raywenderlich.com/50310/storyboards-tutorial-in ...