数组的属性:

  • 数组可以是一维、多维或交错的。

  • 数值数组元素的默认值设置为零,而引用元素的默认值设置为 null。

  • 交错数组是数组的数组,因此,它的元素是引用类型,初始化为 null

  • 数组的索引从零开始:具有 n 个元素的数组的索引是从 0 到 n-1

  • 数组元素可以是任何类型,包括数组类型。

  • 数组类型是从抽象基类型 Array 派生的引用类型。由于此类型实现了 IEnumerable 和 IEnumerable,因此可以对 C# 中的所有数组使用 foreach 迭代。

我对数组的理解:在 C# 中,数组实际上是对象,而不只是像 C 和 C++ 中那样的可寻址连续内存区域

一维数组 :一维数组以线性方式存储固定数目的项,只需一个索引值即可标识任意一个项。

一维数组实例:

1
2
3
4
5
6
7
8
9
10
11
12
static class Program
    {
        
        
        static void Main()
        {
            //一维数组
            int[] arry = new int[9] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
            arry[0] = 2;//第一行为2
            Console.WriteLine(arry);
   }
}
1
<br>

运行结果截图

二维数组实例

1
2
3
4
5
6
7
8
9
10
11
12
//二维数组
 
            int[,] arry2 = new int[2, 3] { { 1, 2, 3 }, { 4, 5, 6 } };
            arry2[1, 0] = 5;//改变第二列的第一行为5
 
            for (int i = 0; i < arry2.GetLength(1); i++)
            {
                for (int y = 0; y < arry2.GetLength(1); y++)//第一个for循环遍历二维数组的列,第二个for循环遍历二维数组的行
                {
                    Console.Write(arry2[i, y]);
                }
            }

运行结果截图

交错数组实例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//交错数组
          int[][] arry3 = new int[3][];//交错数组必须指定下标的个数
 
          arry3[0] = new int[] { 0, 1, 2, 4 };
          arry3[1] = new int[] { 3, 4, 5, 6 };
          arry3[2] = new int[] { 4, 8, 9 };
          for (int x = 0; x < arry3.Length; x++)
          {
              for (int z = 0; z < arry3[x].Length; z++)
              {
                  Console.Write(arry3[x][z]);
              }
              Console.WriteLine();//以inti的数组元素为准进行换行.
          }

运行结果截图

C# 还提供 foreach 语句。该语句提供一种简单、明了的方法来循环访问数组的元素,看下面实例。

1
2
3
4
5
6
7
8
9
static void Main()
        {
int [] arry4=new int[100];
 
            foreach (int a in arry)
            {
                Console.Write(arry);
            }
}

运行结果截图

【完美世界 http://www.23cat.com/Contents_51864.html】
【戮仙 http://www.23cat.com/Book_51960.html】

C# 数组基础知识的更多相关文章

  1. PHP 数组基础知识

    php 数组基础知识function abc($a,$b,$c = 0){ echo $a,$b,$c;}abc(1,3); //调用方法 ////可变参数function def(){ $arr = ...

  2. java中的二维数组基础知识

    二维数组基本知识,毕竟常见的有:概念,初始化,遍历 概念: 理解二维数组,首先要先理解一维数组是什么.一维数组是个容器,存储相同数据类型的容器(这里不再做一位数组的具体介绍).二维数组就是用来存储一维 ...

  3. java数组基础知识

    数组的定义:int[] array=new array[n];int array[]={, , , ,};定义了数组,JVM就会给其一个空间,数组是应用类型的数据类型,其存储方式是随机存储. 数组的遍 ...

  4. js数组基础知识链接

    http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930499.html 小案例:   <script language=&quo ...

  5. php数组基础知识

    php数组 <?php $kele = array('张三',10 => '李四', 'PHP中文网' , '去PHP中文网学PHP', 19 => '王二' , '小明'); // ...

  6. JavaScript 数组基础知识

    // Array 类型: // 检测数组: // console.log(myarr instanceof Array) //true // toString()方法会返回由数组中每个值的字符串形式拼 ...

  7. Json数组基础知识

    1.对象是一个无序的“‘名称/值’对”集合. (1)一个对象以“{”(左括号)开始,“}”(右括号)结束. (2)每个“名称”后跟一个“:”(冒号): (3)“‘名称/值’ 对”之间使用“,”(逗号) ...

  8. JS基础语法---数组基础知识总结

     数组: 存储一组有序的数据  数组的作用: 一次性存储多个数据 数组的定义方式: 1.构造函数定义数组: var 数组名=new Array(); 2.字面量方式定义数组: var 数组名=[]; ...

  9. PHP基础入门(四)---PHP数组实用基础知识

    PHP数组 数组是特殊的变量,它可以同时保存一个以上的值. ***关键词:数组基础.数组遍历.超全局数组.数组功能.数组函数. 下面来和大家分享一下有关PHP的数组基础知识,希望对你PHP的学习有所帮 ...

随机推荐

  1. Vue.js组件遇到的那些坑

    对于绝大多数开发人员来讲,组件是使用Vue.js不能逃避的话题,当然实际开发也会有很多需要注意的地方,一下均为实际操作中遇到的坑,接下来逐一为大家分享: 1.定义并注册组件必须要在声明Vue实例之前, ...

  2. Redis高可用之主从复制实践(四)

    0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...

  3. Android-Kotlin在Fragment获取View

    Android-Kotlin在Fragment获取View Overview 在使用Fragment的时候,使用了ButterKnife 来获取View但是一直出错,后来就直接使用Kotlin的导入布 ...

  4. 前端网页、php与mysql数据库字符编码(解决中文等乱码问题)

    web开发中经常涉及前端网页——php——mysql之间的数据交互,当数据只有英文时通常不会有什么问题,但一旦涉及中文,三个地方的某一处字符编码不一致(如,网页使用的时gbk而mysql使用utf-8 ...

  5. android listView 点两下才监听到

    因为 对应的控件设置了 android:focusableInTouchMode="true" 意思是 触摸模式下 点击第一次 是 获得焦点.===

  6. luoguP4389 付公主的背包 多项式exp

    %%%dkw 话说这是个论文题来着... 考虑生成函数\(OGF\) 对于价值为\(v\)的物品,由于有\(10^5\)的件数,可以看做无限个 那么,其生成函数为\(x^0 + x^{v} + x^{ ...

  7. MySQL Replication(Master与Slave基本原理及配置)

    MySQL Replication(Master与Slave基本原理及配置) 1.  主从mysql server的工作原理:(如图及其过程分析) 过程:   Mysql的复制(replication ...

  8. Prim算法和Kruskal算法

       Prim算法和Kruskal算法都能从连通图找出最小生成树.区别在于Prim算法是以某个顶点出发挨个找,而Kruskal是先排序边,每次选出最短距离的边再找. 一.Prim(普里姆算法)算法: ...

  9. 【原】getInputStream()与getParameterMap()获得Post请求的数据区别

    [前言] 最近在写一个接口,写好以后想测试,自己写ajax(Post方法)来调用接口倒是可以用action所在类的属性的get/set方法获得数据.但是不只是页面的ajax会调用这个接口,还有外系统会 ...

  10. c#调用刀片小票打印机

    public static bool Print(int orderId, string orderTime) { bool b = true; string cut = ((char)29).ToS ...