C#——Array类详情

Array类

Array 类是 C# 中所有数组的基类,其中提供了一系列用来处理数组的操作,例如对数组元素进行排序、搜索数组中指定的元素等。

Array 类中的属性

Array 类中提供了一系列属性,通过这些属性可以获取数组的各种信息。

|----------------|-------------------------------------|
| 属性 | 描述 |
| IsFixedSize | 检查数组是否具有固定大小 |
| IsReadOnly | 检查数组是否为只读 |
| IsSynchronized | 检查是否同步对数组的访问(线程安全) |
| Length | 获取数组中所有维度中元素的总数 |
| LongLength | 获取数组中所有维数中元素的总数,并返回一个 64 位整数 |
| Rank | 获取数组的秩(维数),例如一维数组返回 1,二维数组返回 2,依次类推 |
| SyncRoot | 用来获取一个对象,该对象可以用于同步对数组的访问 |

Array 类中的方法

除了属性之外,Array 类中还提供了一系列的方法,如下表所示:

|----------------------------|------------------------------------------------------------------|
| 方法 | 描述 |
| Clear(Array, Int32, Int32) | 将数组中指定范围内的元素设置为该元素所属类型的默认值 |
| Copy(Array, Array, Int32) | 从第一个元素开始拷贝数组中指定长度的元素,并将其粘贴到另一个数组中(从第一个元素开始粘贴),使用 32 位整数来指定要拷贝的长度 |
| CopyTo(Array, Int32) | 从指定的目标数组索引处开始,将当前一维数组的所有元素复制到指定的一维数组中,索引使用 32 位整数指定 |
| GetLength | 获取数组指定维度中的元素数,并返回一个 32 位整数 |
| GetLongLength | 获取数组指定维度中的元素数,并返回一个 64 位整数 |
| GetLowerBound | 获取数组中指定维度第一个元素的索引 |
| GetType | 获取当前实例的类型(继承自 Object ) |
| GetUpperBound | 获取数组中指定维度最后一个元素的索引 |
| GetValue(Int32) | 获取一维数组中指定位置的值 |
| IndexOf(Array,Object) | 在一个一维数组中搜索指定对象,并返回其首个匹配项的索引 |
| Reverse(Array) | 反转整个一维数组中元素的顺序 |
| SetValue(Object, Int32) | 设置一维数组中指定元素的值 |
| Sort(Array) | 对一维数组中的元素排序 |
| ToString() | 返回一个表示当前对象的字符串(继承自 Object) |

使用

cs 复制代码
    using System;
    
    namespace c.biancheng.net
    {
        class Demo
        {
            static void Main(string[] args) 
            { 
                // 创建一个数组并赋值 
                int[] arr = new int[6] {15, 33, 29, 55, 10, 11 }; 
                // 创建一个空数组
                int[] arr2 = new int[6]; 
                // 获取数组的长度
                Console.WriteLine("数组 arr 的长度为:"+arr.Length); 
                // 为数组排序
                Array.Sort(arr); 
                Console.Write("排序后的数组 arr 为:"); 
                // 打印排序后的 arr
                PrintArray(arr); 
                // 查找数组元素的索引
                Console.WriteLine("\n数组 arr 中值为 29 的元素的索引为:"+Array.IndexOf(arr,29)); 
                // 拷贝 arr 到 arr2 
                Array.Copy(arr, arr2, arr.Length); 
                Console.Write("打印数组 arr2:"); 
                // 打印数组 arr2 
                PrintArray(arr2); 
                Array.Reverse(arr); 
                Console.Write("\n反序排列数组 arr: "); 
                PrintArray(arr); 
            } 
            // 遍历数组元素
            static void PrintArray(int[] arr) 
            { 
                foreach (Object elem in arr) 
                { 
                    Console.Write(elem+" "); 
                } 
            } 
        }
    }
相关推荐
liangsheng_g1 分钟前
SpringAOP拦截器链递归与事务钩子补偿源码实战
java·spring
SL_staff6 分钟前
制造业私有化文档平台的技术实践:从知识孤岛到可追溯知识资产
java·spring·开源
小哈里16 分钟前
【知识】从学科到实践:自然・工程・社科・人文|算法・研发・产品・品牌设计
程序人生·算法·产品·设计·工程
小葱炖豆腐1 小时前
python绘制excel折线图
python·excel·numpy·pandas·matplotlib
小π军1 小时前
最大重叠区间数量
数据结构·算法
镜像视界(浙江)科技有限公司1 小时前
《视频孪生之上:二维展示终结,三维空间计算重构城市逻辑》——跨摄像连续表达 × 三角测量厘米级定位 × 动态轨迹建模,构建新一代城市空间
大数据·人工智能·算法·矩阵·音视频·空间计算
泡泡鱼(敲代码中)1 小时前
MySQL基础学习笔记:从数据模型到DDL全掌握
开发语言·数据库·笔记·学习·mysql
SL_staff1 小时前
3天上线OKR系统:一名HR与1名工程师如何用JVS完成全栈交付
java·低代码·开源
Ticnix2 小时前
MCP 实战:把工具层从 Agent 里彻底解耦
python·mcp
a187927218312 小时前
【算法】双指针与滑动窗口(二):滑动窗口——吃进、判定、吐出
算法·leetcode·双指针·滑动窗口·原理·模板·算法讲解