数组的定义形式

一、一维数组的定义

 

类型名[]  数组名;
类型名[]  数组名  =    {  初始值列表  };
类型名[]  数组名  =    new 类型名[ 数组大小 ];
类型名[]  数组名  =    new 类型名[ 数组大小 ] {  初始值列表  };

int[]  nullArray;

int[]  intArray  =  new  int[ 10 ];

double[]  mathConsts  =    {    3.14,  2.71828,  1.414    };

Days[]  holiday  =    new Days[ 2 ]    {    Days.Sat,  Days.Sun    };

一维数组的使用示例(1):

static  void  Main(string[]  args)

{
      int[]  intArray ;
     intArray=new int[3];
    //或者  int[] intArray=new int [3];
      intArray[0]= 1;
      intArray[1]= 3;
      intArray[2]= 5;
      for  (int i=0; i<intArray.Length; i++)
      {
            Console.WriteLine( “intArray[{0}] = {1}”, i,  intArray[i] );
      }
}
也可以通过intArray.GetLength(0)来访问一维数组
的元素个数

在 C# 中,一维数组的元数个数是与数组绑定在一起的,可通过 <数组名>.Length 的形式来获取数组的元素个数,方便对数组进行访问遍历。如果声明时未初始化数组,则数组成员将自动初始化为该数组类型的默认初始值如果为基本数值类型,数组元素会初始化为0;如果为bool类型,数组元素会初始化为false;如果数组类型为引用类型(如字符串),则数组元素会初始化为null

一维数组的使用示例(2)

static  void  Main(string[]  args)

{
      Days[]  holidays  =
      {
            Days.Sat,
            Days.Sun
      };

      Console.WriteLine(“Holidays is: “);

      for  (int i=0; i<holidays.Length; i++)
      {
            Console.WriteLine(holidays[i]);
      }
}

可以在 C# 中定义任意类型的数组,当然也包括自定义类型,如枚举类型和结构类型,以及后面要讲到的类类型。

二、foreach 循环

foreach 循环可用来对数组进行遍历访问,并可简化对数组的访问。是 for 循环的转化形式:

foreach  (数组类型  变量名  in  数组)

{
//  变量是数组中每个元素
}

等价于   《====》

for  (int i=0; i<数组名.Length; i++)
{
      //  在这里使用数组名[i]来遍历数组
}

foreach 循环使用示例

int[]  intArray  =  {  1, 2, 3, 4  };
foreach  (int  element  in  intArray)
{
Console.WriteLine(element);
}

 《===》

int[]  intArray  =  {  1, 2, 3, 4  };
for  (int i=0; i<intArray.Length; i++)
{
      Console.WriteLine(intArray[i]);
}

用for与foreach访问数组的比较:

1.相同点:都可以循环访问数组每个元素
2.不同点:在foreach中不能直接修改数据的元素,但for可以。如下面的不行:

int[]  intArray  =  {  1, 2, 3, 4  };
foreach  (int  element  in  intArray)
{
element++;
Console.WriteLine(element);
}

 

 

N年前写的文章了,今天回来登录下 ,微刷粉平台提供微博刷粉、微博加粉、微博评论、微博转发,微信公众号刷粉、微信公众号加粉、微信公众号刷阅读评论,抖音刷粉刷赞,全民K歌,小红书等业务,微刷粉是价格最低服务最好的一家粉丝服务平台

就找  www.shualiang.top/nw  刷量

 

三、 二维数组

在某些场合,一维数组已不能满足应用的需要了,当需要记录一张表格中的数据时,使用一维数组将很不方便,如需要记录下一张课程表中的数据:

如果使用一维数组的话,用起来将会非常麻烦:必须把二维的表格数据整理条一行存放,用起来不直观!!!

static  void  Main(string[]  args){

      string[]  timetable      ={
            “”,  “C# 程序设计”,  “”,                          //  星期一
            “”,  “C# 程序设计”,  “”,                          //  星期二
            “C# 程序设计”,  “SQL 数据库”,  “”      //  星期三
            “SQL 数据库”,  “C# 程序设计”,  “”      //  星期四
            “”,  “C# 程序设计”,  “SQL 数据库”      //  星期五
      }
      Console.WriteLine(
“星期五上午34节果是{0}课”,
timetable[ 4 * 3 + 1 ]    //  课程等于  星期 × 每天课数 + 课时
      );
}

二维数组的定义

类型名[,]  数组名;

类型名[,]  数组名  =    {  初始值列表  };

类型名[,]  数组名  =    new 类型名[ 行, 列 ];

类型名[,]  数组名  =    new 类型名[ 行, 列 ] {  初始值列表  };

int[,]  intArray  =  new  int[ 10, 20 ];

double[ 2, 3 ]  mathConsts  =    { { 3.14,  2.71828,  1.414 },  { 0.5,  0.25,  0.125 }    };

Days[,]  workDays  =    new Days[ 2, 2 ]    {    { Days.Mon,  Days.Wed },  { Days.Tue,  Days.Thu }  };

 

二维数组的使用示例(1)

static  void  Main(string[]  args)
{
      int[,]  intArray  =  new  int[2, 3]
      {
            {  1,  3,  5  },
            {  2,  4,  6  }
      }
      for  (int i=0; i<2; i++) 
            for  (int j=0;   j<3;  j++)
            {
                   Console.WriteLine(
                          “intArray[{0}, {1}] = {2}”,
                          i,  j,  intArray[ i, j ]
                    );
            }
}

无法直接得到多维数组每一维的元数个数,使用<数组名>.Length只能得到数组的总元素个数,但可以使用foreach 循环对多维数组进行遍历。    如果是多维数组,则可以使用GetLength()方法确定其某一特定维的长度,例如:<数组名>.GetLength(0);   //获取数组第一维的长度
<数组名>.GetLength(1);   //获取数组第二维的长度

二维数组的使用示例(2)

static  void  Main(string[]  args)
{
      int[,]  intArray  =  new  int[2, 3]
      {
            {  1,  3,  5  },
            {  2,  4,  6  }
      }

      foreach  (int  element  in  intArray)
      {
            Console.WriteLine(element);
      }
}

多维数组(矩形数组)

交错型数组(不规则数组)

不在总结,很少用到!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值