当前位置: 首页 > news >正文

C#数组基础:声明、初始化与访问指南

在C#中,数组是一种数据结构,用于存储固定大小的相同类型的元素集合。可以按照以下步骤声明和使用数组:

声明数组

  1. 指定数组类型和名称:首先,需要指定数组将存储的元素类型以及数组变量的名称。

  2. 指定数组大小(可选):在C#中,可以在声明数组时指定它的大小(即它可以包含的元素数量),也可以在稍后的某个时刻初始化它。

初始化数组

  1. 静态初始化:在声明数组的同时为其分配内存并初始化元素。

  2. 动态初始化:先声明数组,然后在后续代码中为其分配内存(可以指定大小)并初始化元素。

访问数组元素

使用索引来访问数组中的元素,索引从0开始。

示例代码

以下是几个关于如何在C#中声明和使用数组的示例:

静态初始化数组
int[] numbers = { 1, 2, 3, 4, 5 }; // 声明并初始化一个整型数组
动态初始化数组
int[] moreNumbers; // 声明一个整型数组
moreNumbers = new int[5]; // 动态分配内存,数组大小为5
moreNumbers[0] = 10; // 初始化第一个元素
moreNumbers[1] = 20; // 初始化第二个元素
// ... 可以继续初始化其他元素

或者,在分配内存的同时进行部分初始化:

int[] someNumbers = new int[5] { 1, 2, 3 }; // 数组大小为5,但只初始化了前三个元素,其余为0

注意:在上面的动态初始化示例中,如果未显式初始化数组元素,它们将使用类型的默认值(对于引用类型,默认值为null;对于值类型,如int,默认值为0)。

访问数组元素
Console.WriteLine(numbers[0]); // 输出数组的第一个元素:1
Console.WriteLine(moreNumbers[1]); // 输出moreNumbers数组的第二个元素:20

多维数组

C#还支持多维数组,例如二维数组(矩阵):

int[,] matrix = new int[3, 3]; // 声明并初始化一个3x3的二维整型数组
matrix[0, 0] = 1; // 初始化第一个元素(第一行第一列)
// ... 可以继续初始化其他元素

注意事项

  • 数组索引从0开始。
  • 访问数组时,如果索引超出范围(即小于0或大于等于数组大小),将引发IndexOutOfRangeException异常。
  • 数组的大小在声明后是固定的,不能改变。如果需要动态改变大小,可以考虑使用List<T>等集合类型。

http://www.mrgr.cn/news/64544.html

相关文章:

  • 无人机之无线电监测设备技术篇
  • GitHub中搜索项目方法
  • 基于SpringBoot+微信小程序+协同过滤算法+二维码订单位置跟踪的农产品销售平台-新
  • 信息安全工程师(74)网络安全风险评估技术方法与工具
  • golang gin ShouldBind的介绍和使用
  • 复现第三周
  • InsuranceclaimsController
  • 【k8s】-运维技巧-1
  • ngxin系列--(二)--stream模块的加载、accept、read/write
  • 利士策分享,青年心向新潮,未来可期
  • 大模型入门(二)—— PEFT
  • 【JavaEE初阶 — 多线程】Thread的常见构造方法&属性
  • 【Python】全面解析Python中的GIL(全局解释器锁):多线程与多进程的实战与抉择
  • asrpro 库制作
  • 样本不均衡与异常点检测处理|SMOTE|LOF|IForest
  • SVN 提交操作
  • 【语义分割|代码解析】CMTFNet-4: CNN and Multiscale Transformer Fusion Network 用于遥感图像分割!
  • 非线性数据结构之图
  • Python编程风格:保持逻辑完整性
  • Linux运行Java程序,并按天输出日志
  • 【Orange Pi 5 Linux 5.x 内核编程】-设备驱动中的sysfs
  • 【单片机C51两个按键K1、K2控制8个LED灯,初始值0xFE。摁下一次K1,LED灯左移;摁下一次K2,LED灯右移;】2022-1-5
  • 再学FreeRTOS---(中断管理)
  • 智能指针、移动语义、完美转发、lambda
  • 数字信号处理Python示例(3)生成三相正弦信号
  • 鸿蒙开发案例:分贝仪