• 数组总结笔记


    经常看数组每次都看自己的笔记,分享下吧。 

    1.数组声明和初始化

    由于数组是引用类型,所以应该用new来初始化数组。

    (1)一维

    Int[] a={1,2};//这样也可以的。

    Int[] a=new int[2]{1,2};//定大小(元素个数与数组大小必须匹配)

    Int[] a=new int[]{2,3,3};//由值定义大小

    Int[] a=new int[size];//常量定义

    Const int size=3;

    (2)多维

    Int[,] a=new int[2,2];

    Int[,] a={{1,2},{2,3}};//

    用数组初始化器(用字面值初始化)时,必须指定每个元素的值,不能遗漏。

    针对一维数组可以用foreach来循环访问每个元素。

    Foreach(int I in myInt){}

    (3)变长数组

    注意:子数组是不能指定的,而必须分开指定。

    例:Int[][] a;

    a=new int[2][];

    a[0]=new int[4];

    a[1]=new int[5];

    或 a=new int[2][]{new int[]{1,2},new int[]{3,4}};

    例:int[][] a={new int[]{1,2,3},new int[]{3,3,3}};

    2Array类

    此类是作为所有数组的虚基类,当用C#语法声明了数组,实际上就继承了它的方法和属性。

    属性 说明

    Length 返回元素个数,返回int型,如果多维数组,返回所有阶的元                                         素个数

    Longlength 返回元素个数,只是用Long型返回的。

    Rank 返回数组的维数

    常用方法

    CreateInstance(),SetValue(),Sort()

    3.迭代器

    迭代器的定义是,它是一个代码块,按顺序提供了要在foreach循环中使用的所有值,一般情况下,这个代码块是方法,但也可以使用属性访问器和其代码块作为迭代器。

    (1)如果要迭代一个类,使用方法GetEnumerator(),其返回类型是IEnumerator就可以了。

    (2)如果要迭代一个类成员,例如方法,则返回类型IEnumerable。

    在迭代器块中,使用yeild关键字选择要在foreach循环中使用的值。可以使用yield return;来中止返回值。

    Public static IEnumerable SimpleList()//迭代一个类成员

    {

    Yield return “str1”;

    Yield return “str2”;

    }

    Foreach(string item in SimpleList){}

    Public IEnumerator GetEnumerator()//如果类中存在这个方法并且返回相应接口就可以迭代一个类。一般类重写IEnumerable接口来实现,泛型和非泛型都实现

    {

    Yield return “ok”;

    }

  • 相关阅读:
    Cg:访问OpenGL的状态
    C++ Exception Handling
    C语言的调用规约(Calling Convension)之参数传递和返回值
    Why is FBX readonly in animation editor when imported?
    如何在Visual Studio中编译wxWidgets
    ICU字符集编码转换一例
    VisTools
    关于数值分析和LCP问题的一些开源项目
    C++: The Case Against Global Variables
    老男孩筷子兄弟
  • 原文地址:https://www.cnblogs.com/kounian/p/3384929.html
Copyright © 2020-2023  润新知