C# —— 二维数组

C#当中 多维数组 又称为矩形数组,最简单的多维数组是二维数组,可以被认为带有x行和y列的表格

二维数组的定义: 不是ArrayList, ArrayList没有多维情况, 多维数组指的是Array 静态定义方式

类型[,]名字 = new 类型[行数,列数]

int[,]ints = new int[3, 4];//3行4列的数据

string[,] strings = new string[5, 4];

初始化多维数组

int[,] ints1 = new int[3, 4]

{

{ 1,2,3,4},// 第0行

{ 4,5,6,7},// 第一行

{ 1,2,4,4}// 第二行

};

会根据初始值 进行推导

cs 复制代码
string[,] strings1 = new string[,]
{
    { "a","b","c"},
    { "a","b","c"},
    { "a","b","c"}
};

int[,,] i1 = new int[,,]
{
    {
        { 1,2,3,4 },
        { 1,2,3,4 },
    },
    {
        { 1,2,3,4 },
        { 1,2,3,4 },
    }
};

也可以通过for循环来进行添加元素

cs 复制代码
string[,] s1 = new string[5, 10];
for (int i = 0; i < 5; i++)// 控制行数
{
    for (int j = 0; j < 10; j++)//控制列数
    {
        s1[i, j] = i + "," +j; //
    }
}

二维数组取值 去索引值为3行 索引值为6的列

Console.WriteLine(s1[3,6]); // 3 6

Console.WriteLine(s1[5, 9]);

遍历二维数组

cs 复制代码
foreach (string i in s1)
{
    // 打印所有的元素
    Console.WriteLine(i);
}
// 数组的总长度
Console.WriteLine(s1.Length+"......");
Console.WriteLine(s1.GetLength(0));// 几行
Console.WriteLine(s1.GetLength(1));// 几列

for循环遍历

cs 复制代码
 for (int i = 0; i < s1.GetLength(0); i++)
 {
     for (int j = 0; j < s1.GetLength(1); j++)
     {
         Console.WriteLine(s1[i,j]+"------");
     }
 }

 Console.ReadLine();
相关推荐
瑞行AI几秒前
一套数据格式框架搞定大模型微调和对齐训练
算法·语言模型
玛卡巴卡ldf1 分钟前
【LeetCode 手撕算法】(动态规划)爬楼梯、杨辉三角、打家劫舍、完全平方数、零钱兑换、单词拆分、最长递增子序列、乘积最大子数组、分割等和子集
java·数据结构·算法·leetcode·动态规划·力扣
小短腿的代码世界2 分钟前
Qt实时风控计算引擎:从订单校验到盈亏监控的完整架构设计与高性能实现
开发语言·qt
jake·tang2 分钟前
深度解析 VESC 参数辨识源码:电阻、电感与磁链
arm开发·c++·嵌入式硬件·算法·数学建模·傅立叶分析
MaikieMaiky4 分钟前
C++STL 系列(三):deque 容器详解与示例
开发语言·c++
图码8 分钟前
矩阵边界遍历:顺时针与图案打印的两种高效解法
数据结构·python·线性代数·算法·青少年编程·矩阵·深度优先遍历
南境十里·墨染春水8 分钟前
线程池学习(三) 实现固定线程池
开发语言·c++·学习
sali-tec8 分钟前
C# 基于OpenCv的视觉工作流-章72-点-点距离
图像处理·人工智能·opencv·算法·计算机视觉
橘子海全栈攻城狮9 分钟前
【最新源码】基于springboot的快递物流平台的设计与实现C102
java·开发语言·spring boot·后端·spring·web安全
之歆9 分钟前
DAY_24JavaScript 面向对象深度全解:Object、构造函数与 this 系统指南(上)
开发语言·前端·javascript·原型模式