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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 织梦php如何完全卸载,织梦dedecms如何去掉或删除power by dedecms

    织梦php如何完全卸载,织梦dedecms如何去掉或删除power by dedecms做贼心虚——当看到网站页面中出现powerbydedecms,哥的心里总感觉虚得慌。为何在使用dedecms时,自己并不想让别人知道该网站是用dedecms做的呢?是为了网站安全考虑不透露信息,还是不想让人知道你用的仅是开源系统,low逼了一地!一些用wordpress搭建的网站,常看到网页底部有一行字或配小图,大意是:自豪地使用wordpress来进行创作。而作为具备同样功能的dedecms…

    2022年7月13日
    11
  • 查看Linux内核版本的命令_查看redhat版本命令

    查看Linux内核版本的命令_查看redhat版本命令有朋友在使用Linux的过程中要查看Linux的内核版本号,这要怎么看呢?也有朋友文要怎么查看linux系统版本信息呢?下面和小编一起了解一下吧。一、查看linux内核版本号1:登录linux,在终端输入cat/proc/version2:登录linux,在终端输入uname-a即列出linux的内核版本号。二、查看linux系统版本信息1:登录到linux服务器执行lsb_rele…

    2022年10月13日
    2
  • win10 java jdk环境变量 配置

    win10 java jdk环境变量 配置以前只是大概说了以下jdk配置的注意事项,今天准备详细记录一下,万一以后用的着呢。当然这不是我的原创工作,只是把网上有的内容整合了以下。首先到官网将jdk的安装包下载下来,这是网址(http://www.oracle.com/technetwork/java/javase/downloads/index.html)进去以后会看到如下画面:点击左边的JavaPlatform(JD

    2022年7月21日
    17
  • 什么是数据安全,为什么需要保证数据安全「建议收藏」

    什么是数据安全,为什么需要保证数据安全「建议收藏」WHAT何为数据安全?数据安全指的是用技术手段识别网络上的文件、数据库、帐户信息等各类数据集的相对重要性、敏感性、合规性等,并采取适当的安全控制措施对其实施保护等过程。与边界安全、文件安全、用户行为安全等其他安全问题相同,数据安全并非是唯一一种能提升信息系统安全性的技术手段,也不是一种能全面保障信息系统安全的技术手段。它就是一种能够合理评估及减少由数据存储所带来的安全风险的技术方式。为什么需…

    2022年5月11日
    44
  • .Net审计之.Net Json反序列化

    .Net审计之.NetJson反序列化前言偶然下遇到一个.NET下有意思的Json反序列化点,记录一下反序列化内容,直入主题。.NetJson常见序列化与反序列化NET中常见的数据格

    2021年12月13日
    53
  • 语义分割模型精度排名_场景语义分割

    语义分割模型精度排名_场景语义分割憨批的语义分割1——基于Mobile模型的segnet讲解学习前言什么是Segnet模型segnet模型的代码实现1、主干模型Mobilenet。2、segnet的Decoder解码部分代码测试学习前言最近开始设计新的领域啦,语义分割也是图像处理一个非常重要的应用方向,我查了很多资料苦于如何入门,接下来给大家讲讲里面比较基础的segnet模型。在下一个BLOG我会跟大家讲怎么训练自己的segn…

    2022年8月21日
    31

发表回复

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

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