C#初级——数组

数组

数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合

数组的定义

数组类型[] +数组名称 = value;

初始化数组

数组类型[] +数组名称 = new 数组类型[数组大小];

数组赋值

数组可以通过直接赋值,以及初始化来对数组进行赋值操作。并且呢数组可以给它赋值为空,也可以不限定数组的大小和把该数组赋值给另一个数组。

cs 复制代码
int[] arrNum1 = { 1, 2, 3, 4, 5 };
int[] arrNum2 = new int[5] { 1, 2, 3, 4, 5 };
int[] arrNum3 = null;
int[] arrNum4 = new int[] { 1, 2, 3 };
int[] arrNum5 = arrNum2;

数组元素的访问

元素是通过带索引的数组名称来访问的。

数组名称[索引(从零开始)];

数组的遍历

数组.Length: 获取数组元素的个数

数组.GetLength:获取数组元素的个数(多用于二维数组或者多维数组的遍历)

cs 复制代码
Console.WriteLine($"len = {arrNum.Length}");
//Console.WriteLine($"len = {arrNum.GetLength}");
for (int i = 0; i < arrNum.Length; i++)
{
    Console.WriteLine($"i = {arrNum[i]}");
} 

除了用 for语句循环,还可以用 foreach() 循环语句

cs 复制代码
int[] arrNum = { 1, 2, 3, 4, 5 };
for (int i in arrNum)
{
    Console.WriteLine($"arrNum = {arrNum[i]}");
} 

二维数组

在二维数组的定义上,C#与C/C++不一样,C/C++的二维数组是 **数组类型[ ][ ],**在引用上也是如此。

数组类型[,] 数组名称 = { };

cs 复制代码
 int[,] arr_Num = { { 1, 2, 3 }, { 4, 5, 6 } };

二维数组元素的访问

数组名称[ , ] ,索引之间用**,**隔开。

cs 复制代码
Console.WriteLine(arr_Num[1, 2]);

在遍历数组之前,需要对数组进行长度计算,运行以下代码,就会发现两种求数组长度的区别。在二维数组以及多维数组的遍历中使用Length方法会变得麻烦,而GetLength方法则可以将其简化。

cs 复制代码
Console.WriteLine(arr_Num.Length);          //6
Console.WriteLine(arr_Num.GetLength(0));    //2    //求行数
Console.WriteLine(arr_Num.GetLength(1));    //3    //求列数

二维数组的遍历

cs 复制代码
for (int i = 0; i < arr_Num.GetLength(0); i++)
{
    for (int j = 0; j < arr_Num.GetLength(1); j++)
    {
        Console.Write(arr_Num[i, j]);
    }
    Console.Write("\n");
}
相关推荐
迷迭所归处11 分钟前
C++ —— 关于vector
开发语言·c++·算法
架构文摘JGWZ40 分钟前
Java 23 的12 个新特性!!
java·开发语言·学习
leon62541 分钟前
优化算法(一)—遗传算法(Genetic Algorithm)附MATLAB程序
开发语言·算法·matlab
锦亦之22332 小时前
QT+OSG+OSG-earth如何在窗口显示一个地球
开发语言·qt
我是苏苏2 小时前
Web开发:ABP框架2——入门级别的增删改查Demo
java·开发语言
姜太公钓鲸2332 小时前
c++ static(详解)
开发语言·c++
菜菜想进步2 小时前
内存管理(C++版)
c语言·开发语言·c++
2301_789985942 小时前
Java语言程序设计基础篇_编程练习题*18.29(某个目录下的文件数目)
java·开发语言·学习
知星小度S2 小时前
C语言——自定义类型
c语言·开发语言
__water2 小时前
『功能项目』回调函数处理死亡【54】
c#·回调函数·unity引擎