牛骨文教育服务平台(让学习变的简单)
博文笔记

C#二维数组的定义,初始化(重在理解两者的区别)

创建时间:2016-12-19 投稿人: 浏览次数:144

在学习C++基础知识之后 , 现在学习C#其实简单很多,但是还是有些不同的,就比如C#中二维数组的定义、声明 都 是有所不同的。


下面看看有什么不同:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;

namespace 二维数组
{
    class Program
    {
        static void Main(string[] args)
        {
       
            //二维数组:
            //规则二维数组的定义和初始化
            int[,] Arr = new int[2, 5] { { 1, 2, 3, 5, 6 }, { 1, 2, 3, 4, 5 } };
            Console.WriteLine("规则二维数组的输出:");
            for (int i = 0; i < 2; ++i)
            {
                for (int j = 0; j < 5; ++j)
                {
                    Console.Write(Convert.ToString(Arr[i,j]) + " ");
                }
                Console.WriteLine();
            }
            Console.WriteLine("----------------");
            //不规则二维数组
            int [][] arr = new int [3][ ];  //表示含有三个一维数组的数组
            arr[0] = new int[5]{1,2,3,4,5};
            arr[1] = new int [2]{0,1};
            arr[2] = new int[0] { };
            Console.WriteLine("输出方法一:");
            for (int i = 0; i < 2; ++i)
            {
                for (int j = 0; j < 5; ++j)
                {
                    Console.Write(Convert.ToString(Arr[i, j]) + " ");
                }
                Console.WriteLine();
            }
            Console.WriteLine();
            Console.WriteLine("输出方法二:");
            for (int ii = 0; ii < arr.Length; ++ii)// arr.Length是 3可以看出arr是包含三个一维数组的数组
            {
                foreach (int j in arr[ii])
                {
                    Console.Write(j+ " ");
                }
                Console.WriteLine();
            }
            Console.ReadKey();


        }
    }
}


从上面的C#代码可以看出,C#有两种不同的定义二维数组的方式,当然两者的区分上面已经说得很清楚了,不懂的话copy下来运行一遍,对比一下。

还有C++在定义二维数组的时候,当然是必须写出 数组的"列数",而C#的不规则二维数组可以理解为 保存一维数组的数组



声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。