Array 类是 C# 中所有数组的基类,它是在 System 命名空间中定义。Array 类提供了各种用于数组的属性和方法,可看作扩充了功能的数组(但不等同数组),可以使用Array类的属性来对数组进行各种操作。

数组的容量是固定的,而ArrayList的容量可以根据需要自动扩充

ArrayList提供添加,删除和插入某一范围元素的方法,但在数组中,只能一次获取或设置一个元素

ArrayList提供将只读和固定大小包装返回到集合的方法,而数组不提供

ArrayList只能是一维形式,而数组可以提供多维的

Array属性:Length(LongLength)

1.格式:int[ ] a = new int [ 3 ] ;

Console.WriteLine(a.Length);

2.用户可以获取数组的长度,对于一维数组来说,通过“数组名,Length”就可以得到数组的长度

3.Length获取一个32位的整数,该值表示所有维度的数组中的元素总数

4.LongLength获取一个64位整数,该值表示所有维度的数组中的元素总数

For example

            Console.WriteLine("狼人杀游戏主要身份:");//提示信息
//定义数组,存储狼人杀游戏主要角色
string[] roles = { "狼人", "预言家", "村民", "女巫", "丘比特", "猎人", "守卫\n" };
foreach(string role in roles)//遍历数组
{
Console.Write(role + " ");//输出遍历到的元素
} Console.WriteLine("数组的个数:");
Console.WriteLine(roles.Length);
Console.ReadLine();

Array属性:Rank(方法GetUpperBound,GetLowerBound)

1.格式:public int Rank [ get; ]

2.Rank获取数组的秩(维度)

3.GetUpperBound用于获取Array的指定维度的上限

4.GetLowerBound用于获取Array的指定维度的下限

 string[,] abcd = new string[, ] //很明显这是一个2*4的数组
//就是第一个数组中包含4个元素,第二个数组也包含4个元素,第三个数组也包含4个元素
//Rank就是维数 这里代表的就是[2,4]中的2 下面的循环是依次遍历每一个数组中包含的数组
for (int i = ; i < abcd.Rank; i++)
{
//GetUpperBound方法 获取 Array 的指定维度的上限。下面这段代码就是遍历每个数组每 一个元素
for (int j = ; j <= abcd.GetUpperBound(abcd.Rank - ); j++)
}
       Console.WriteLine("狼人杀游戏主要身份:");//提示信息
//定义数组,存储狼人杀游戏主要角色
string[] roles = { "狼人", "预言家", "村民", "女巫", "丘比特", "猎人", "守卫\n" };
foreach(string role in roles)//遍历数组
{
Console.Write(role + " ");//输出遍历到的元素
} Console.WriteLine("数组的个数:");
Console.WriteLine(roles.Length);//输出为7
Console.WriteLine(roles.GetLowerBound());//输出为0
Console.WriteLine(roles.GetUpperBound());//输出为6
Console.ReadLine();

Array属性:IsReadOnly

1.获取一个值,该值指示数组是否只读

Array属性:IsFixedSize

1.获取一个值,该值指示数组是否带有固定大小

Array方法:添加

Array方法:删除

Clear(Array)

根据元素的类型,设置数组中某个范围的元素为零,为false或者为null

Array方法:排序

Sort(Array)

使用数组的每个元素的 IComparable 实现来排序整个一维数组中的元素

Reverse(Array)
逆转整个一维数组中元素的顺序。

Array方法:Copy

1.通过该方法可实现数组的合并和拆分

2.格式:

(1)Array.Copy(数组1,数组2,长度);

(2)Array.Copy(数组1,数组2,Int64);

(3)Array.Copy(数组1,指定索引,数组2,指定索引,长度);

(4)Array.copy(数组1,指定索引,数组2,指定索引,长度Int64);

For example

Array方法:GetLength

获取一个32位整数,该值表示指定维度的数组中元素总数

Array方法:GetLength

获取一个64位整数,该值表示指定维度的数组中的元素总数

Array方法:GetType

获取当前实例的类型。从对象中继承

Array方法:GetValue

获取一维数组中指定位置的值。索引由一个32位整数指定

Array方法:SetValue(Object,In32)

给一维数组中指定位置的元素设置值。索引由一个32位整数指定

Array方法:IndexOf(Array,Int32)

搜索指定的对象,返回整个一维数组中第一次出现的索引

Array方法:ToString

返回一个表示当前对象的字符串。从对象(Object)继承

 

C#数组--(Array类的属性和方法)的更多相关文章

  1. 新手指引,php什么是常量、变量、数组、类和对象及方法?

    众所周知,常量.变量.数组.类和对象及方法共同构成了PHP的基石.那么什么是常量?什么是变量?什么是数组?什么是类和对象及方法?我在此谈谈个人浅见,新手指引,高手勿喷. PHP 常量 定义:常量是单个 ...

  2. Delphi 正则表达式之TPerlRegEx 类的属性与方法(2): 关于子表达式

    Delphi 正则表达式之TPerlRegEx 类的属性与方法(2): 关于子表达式 // MatchedExpression 与 SubExpressions[0] var   reg: TPerl ...

  3. JS对象—数组总结(创建、属性、方法)

    JS对象—数组总结(创建.属性.方法) 1.创建字符串 1.1 new Array() var arr1 = new Array(); var arr2 = new Array(6); 数组的长度为6 ...

  4. <九>面向对象分析之UML核心元素之设计类,类,属性,方法,可见性

    设计类

  5. java基础学习总结六(对象与类、类的属性与方法)

    一:面向过程与面向对象的区别 举例:一个人开门的动作,可以分解为开门,人进去,关门. 面向过程:人作为执行者,1:开门  2:进入   3:关门 面向对象:人作为指挥者,将开门,关门的动作都封装到门上 ...

  6. final可以修饰类、属性、方法

    final可以修饰类.属性.方法. 当用final修饰类的时候,此类不可被继承,即final类没有子类.这样可以用final保证用户调用时动作的一致性,可以防止子类覆盖情况的发生. 当利用final修 ...

  7. Java 类、属性、方法修饰符 public、private、protected、default

    Java 中修饰类修饰符:public .default (默认) Java 中修饰类中属性.方法修饰符:public.private.protected.default (默认) 通过 IDEA 创 ...

  8. Delphi 正则表达式之TPerlRegEx 类的属性与方法(7): Split 函数

    Delphi 正则表达式之TPerlRegEx 类的属性与方法(7): Split 函数 //字符串分割: Split var   reg: TPerlRegEx;   List: TStrings; ...

  9. Delphi 正则表达式之TPerlRegEx 类的属性与方法(6): EscapeRegExChars 函数

    Delphi 正则表达式之TPerlRegEx 类的属性与方法(6): EscapeRegExChars 函数 // EscapeRegExChars 函数可以自动为特殊字符加转义符号 \ var   ...

随机推荐

  1. Android -- Glide框架详解(一)

    1,使用这个框架快两年了,今天去github上去看了一下,貌似已经从3.X升级到4.X了,想着自己还没有对这个框架在博客上做过总结,所以这里打算出三篇博客来介绍,内容有基本使用.3.X与4.X的不通. ...

  2. day14 python各种推导式详解

    推导式的套路 之前我们已经学习了最简单的列表推导式和生成器表达式.但是除此之外,其实还有字典推导式.集合推导式等等. 下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式. variabl ...

  3. JD-GUI反编译出现ERROR

    反编译Jar包一般使用JD-GUI工具,很方便.但有时会出现异常,如下: 此时,可以辅助使用另一个工具来反编译代码:Luyten(https://github.com/deathmarine/Luyt ...

  4. DotNetty网络通信框架学习

    p{ text-align:center; } blockquote > p > span{ text-align:center; font-size: 18px; color: #ff0 ...

  5. nginx ../logs/nginx.pid" failed (2: No such file or directory)

    [1]nginx.pid相关 (1)可能出现两种场景: 1.1 nginx.pid文件不存在 发生现象:nginx: [error] open() "/usr/local/lib/ubcsr ...

  6. Redis做分布式锁

    在分布式系统中,在接口没有保证幂等性或者在某些场景下相同的服务需要有且仅有一个服务执行的情况下,需要使用分布式锁来保证系统的安全执行. 分布式锁的执行顺序,有服务A,分别部署了三个节点为A1.A2.A ...

  7. QGraphicsItem的paint函数的一些相关问题

    在QGraphicsItem中,一个成员函数paint(),其声明如下: void QGraphicsItem::paint ( QPainter * painter, const QStyleOpt ...

  8. dataguard从库移动数据文件

    ------------方法1从库移动数据文件路径方法1--------------将表空间offline的方法不行 1.退出日志应用alter database recover managed st ...

  9. 换个角度聊聊FaaS

    Serverless/FaaS伴随着k8s的热度增加,也成为了热门话题.相关文章介绍了很多,这里笔者不一一赘述,而是从个人见解上聊聊关于FaaS的架构和意义. FaaS可能的架构优化 从AppEngi ...

  10. 将一,二维数组转化为Excel格式

    首先,我们来看一下一维数组的, 其代码可以如下: import numpy as np import pandas as pd x = pd.Series([1, 3, 5, np.nan]) pri ...