c#数组「建议收藏」

c#数组「建议收藏」C#数组要注意的事项:1.([])必须跟在类型后面,而不是标识符后面,在C#中,将方括号放在标识符后是不合法的。eg:int[]table;2.数组大小不是其类型的一部分,而在C语言中却

大家好,又见面了,我是你们的朋友全栈君。

C#数组要注意的事项:

1.([])必须跟在类型后面,而不是标识符后面,在C#中,将方括号放在标识符后是不合法的。

eg :int [] table ;

2.数组大小不是其类型的一部分,而在C语言中却是数组类型的一部分,这样,可以声明一个数组并向它分配int对象的任意数组,而不管数组长度如何;

int[] numbers;

numbers = new int[10];

 

声明数组

C#支持一维数组,多维数组和数组的数组(交错的数组),下面声明不同类型的数组:

一维数组:

int[] numbers;

多维数组:

string[,] name ;

数组的数组(交错的):

byte[][] score;

声明数组(如上所示)并不实际创建它们。在C#中,数组是对象,必须进行实例化。下面展示如何创建数组:

一维数组:

int[]  numbers  = new int[5];

多维数组:

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

数组的数组(交错的):

byte[][] scores = new byte[5][];

for(int x = 0;x < scores.Length;x++)

{

  scores[x] = new byte[4];

}

初始化数组

C# 通过将初始值括在大括号({})内为在声明时初始化数组提供了简单而直接了当的方法:

一维数组:

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

string[] names = new string[3]{“Matt”,”Joanne”,”Robert”};

可省略数组的大小,如下图示:

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

string[] names = new string[] {“MAT”,”JONE”};

如果提供了初始值设定项,还可省略new运算符,如下所示:

int[] numbers = {1,2,3,4,5};

string [] names = {“Matt”,”Jhon”};

多维数组:

int[,] numbers = new int [3,2]{{1,2},{3,4},{5,6}};

string[,]  siblings = new string[2,2] {{“Mlj”,”Amy”},{“Mary”,”Albert”}};

可省略数组大小,如下所示:

int[,] numbers = new int [,]{{1,2},{3,4},{5,6}};

string[,]  siblings = new string[,] {{“Mlj”,”Amy”},{“Mary”,”Albert”}};

如果提供了初始值设定,则可省略new运算符:

int[,] numbers = {{1,2},{3,4},{5,6}};

string[,] sibling =  {{“Mlj”,”Amy”},{“Mary”,”Albert”}};

 

 

 

访问数组成员:

访问数组成员可以直接进行,类似于C/C++中访问数组成员,例如下面的代码创建一个名为numbers的 数组,然后像该数组的第五个元素赋以5:

int[] numbers = {10,4 ,3,2,4,56,7,23,4,5};

numbers[4] = 5;

下面的代码声明一个多维数组,并向位于[1,1]的成员赋以5:

int[,] numbers = {{1,2},{3,4},{5,6},{7,8},{9,10}};

numbers[1,1] = 5;

下面的语句向第一个数组的第一个元素赋以58,向第二个数组的第二个元素赋以667;

numbers[0][0] = 58;

numbers[1][1] = 667;

 

在C#中数组实际上是对象,System.Array 是所有数组类型的抽象基类型。可以使用System.Array 具有的属性以及其它类成员,

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154743.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • QCustomPlot使用心得五:坐标轴常用属性设置[通俗易懂]

    QCustomPlot使用心得五:坐标轴常用属性设置[通俗易懂]先看轴部分的名称约定,根据名称就可以修改对应的属性了1.显示坐标轴默认只显示左y轴和下边的x轴,调用setVisible(bool)设置轴是否显示customplot->yAxis2->setVisible(true);//显示y轴2customplot->xAxis2->setVisible(true);//显示x轴2调用se…

    2022年10月16日
    0
  • 几款.Net加密/加壳工具的比较

    几款.Net加密/加壳工具的比较前言  使用过.NET的程序员都知道,.NET是一个巨大的跨时代进步,它开发效率高、功能强、界面观、耐用、新的语言C#已经提交为行业规范、CLR共公运行库资源丰富,这所有的特点标志着它成为主流编程语言是必然的。     可是它也有一个缺点,那就是编译好的程序集可以完全反编译成源代码,这给一些不法份子提供了很好的机会,试想想,您辛苦的劳动成果就这样给了别人;所以如何保护我们的知识产

    2022年6月27日
    37
  • Unity零基础到入门 ☀️| 小万字教程 对 Unity 中的 协程 ❤️全面解析+实战演练❤️[通俗易懂]

    Unity零基础到入门 ☀️| 小万字教程 对 Unity 中的 协程 ❤️全面解析+实战演练❤️[通俗易懂]Unity,为了让Unity基础知识专栏更加完善,又肝了一篇协程来学习。协程在Unity中还是很常用的,一起来看一下协程的基本概念和使用方法吧!

    2022年7月27日
    4
  • 大数据毕业设计 – 选题推荐(一)

    大数据毕业设计 – 选题推荐(一)文章目录1开题指导1.1起因1.2如何避坑(重中之重)1.3为什么这么说呢?1.4难度把控1.5题目名称1.6最后选题建议3最后1开题指导1.1起因近期开题的同学越来越多,很多同学不知道怎么选题,不知道老师分配的题目应该怎么做,指导老师分享的信息不多,无从下手。1.2如何避坑(重中之重)毕设选题实际上对很多同学来说一个大坑,每年挖坑给自己跳的人太多太多,选题选得好后面的答辩以及论文撰写会轻松很多,选的不好就是一个无穷无尽的折磨。。。。1.3为什么这么说呢?其实这主要

    2022年5月25日
    121
  • clion激活码2021_最新在线免费激活

    (clion激活码2021)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月26日
    69
  • 妇产科护理学试题库及答案_妇产科护理学题库集各章节

    妇产科护理学试题库及答案_妇产科护理学题库集各章节试题一1.关于子宫的位置与形态,正确的为DA.位于盆腔下方B.形如扁梨形C.容积为2mlD.前与膀胱,后与直肠为邻E.子宫峡部非孕时长3cm2.保持子宫前倾位置的一对主要韧带是CA.圆韧带B.阔韧带C.主韧带D.骨盆漏斗韧带E.子宫骶骨韧带3.与后穹隆顶端贴接的部分为EA.宫颈口B.附件C.膀胱D.直肠E.直肠子宫陷凹4.关于骨盆外测量径线的描述,错误的是BA.髂棘间径为两侧髂前上棘外缘间的距离B.坐骨结节间径为两侧坐骨结节外缘间的距离C

    2025年7月10日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号