首页 > 编程语言 >C#——动态数组ArrayList

C#——动态数组ArrayList

时间:2024-06-11 20:31:41浏览次数:17  
标签:删除 C# ArrayList 元素 a1 索引 数组

动态数组

动态数组: ArrayList,代表了可被单独索引的对象的有序集合,可以代替一个数组Array,动态数组可以使用索引在指定的位置添加或者删除元素,动态数组自动重新调整数组的大小

声明

声明方式1: 不带参数初始数组  ArrayList a1 = new ArrayList();

声明方式2: 初始化的带上数组的元素  ArrayList a2 = new ArrayList() { 1, 2, 3, 4 };

声明方式3:初始化的带上数组的空间大小  ArrayList a3 = new ArrayList(100);

属性

1.添加Add

a1.Add("今天周一");

2.输出

// 使用string.jion方法先将数组转为字符串然后进行输出Console.WriteLine(string.Join(",",a1.ToArray()));

3.查询

// 查询数组 访问数组 通过索引值访问 数组名[索引]

Console.WriteLine(a1[1]);

4.长度count

// 动态数组的长度 count

Console.WriteLine(a1.Count);

5.设置空间大小Capacity

a1.Capacity = 100;

6.数组的插入 insert

参数1:插入的位置的索引, 参数2:是插入的元素

a1.Insert(0, "123456789");

7.数组的删除Remove RemoveAt RemoveRange

1. 通过元素删除Remove

a1.Remove(10);

2.在指定的位置删除元素 (通过索引值)RemoveAt

RemoveAt(2);

3.删除一个范围RemoveRange

参数1: 删除的位置 参数2: 删除个数

a1.RemoveRange(0,1);

8.清空数组 clear();

a1.Clear();

9.遍历

foreach (var item in array)

{

         Console.WriteLine(item +", ");

}

10.正序

a4.Sort();

11.倒序

a4.Reverse();

12.其他方法

Equals() 判断两个对象是否相同.         返回值: true/false

contains() 判断数组是否包含某个元素 返回值: true/false

IndexOf() 数组是否存在某一个元素 返回值: index/ -1(如果存在则返回则返回这个元素的索引,不存在的话则返回-1)

AddRange() 把范围的元素添加到一个新数组里面

标签:删除,C#,ArrayList,元素,a1,索引,数组
From: https://blog.csdn.net/qq_3517289697/article/details/139607897

相关文章

  • C#——集合List
    listlist集合和Arraylist基本一样,只不过list是C#2.0版本新加入的范型类型。list也可以通过索引操作里面的元素,也有对list进行增删改查概念Array静态数组*Arraylist动态数组*list集合*1.Array是容量是固定的,但是ArrayList和list容量可以根据需要自动扩充,修改删除,插......
  • C#实现多线程的几种方式(附完整源码)
    C#实现多线程的几种方式1.使用Thread类:2.使用ThreadPool类:3.使用Task类:以下是C#中实现多线程的几种常见方式的示例代码:1.使用Thread类:usingSystem;usingSystem.Threading;​classProgram{staticvoidMain(){Threadth......
  • C#实现应用程序多屏显示(附完整源码)
    C#实现应用程序多屏显示下面是一个简单的C#示例程序,演示如何在多个屏幕上显示窗口。这个示例将创建两个窗体,并将它们分别显示在两个不同的屏幕上。如果你的系统上有多个屏幕,这个程序将会有效。确保你在一个WindowsForms应用程序中使用以下代码。首先,创建一个新的W......
  • `kubectl get pod -oyaml` 和 `kubectl describe pod`
    kubectlgetpod-oyaml和kubectldescribepod这两个命令都用于获取Pod的信息,但它们提供信息的方式和内容有所不同:kubectlgetpod-oyaml:这个命令列出指定Pod的信息,输出格式为YAML。输出内容是结构化的,并且通常是机器可读的。它包括Pod的所有字段和值,如API......
  • 11-CSS定位
    01CSS定位概念理解01标准流布局概念的理解02position属性02相对定位依然在标准流中应用场景:在不影响其它元素的情况下,对当前元素进行微调<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"co......
  • Combining Recurrent, Convolutional, and Continuous-time Models with Linear State
    目录概符号说明LSSL和其它方法的联系代码GuA.,JohnsonI.,GoelK.,SaabK.,DaoT.,RudraA.,andReC.Combiningrecurrent,convolutional,andcontinuous-timemodelswithlinearstate-spacelayers.NeurIPS,2021.Statespacerepresentaion-wiki.概Mamba......
  • C# hashset vs list
    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Management;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows;usingSystem.Windows.Controls;usingSystem.Windows.Data;usingSystem.Windows.Documents;us......
  • cJSON学习及简单应用小结
    JSON简介JSON(JavaScriptObjectNotation,JavaScript对象表示法)是一种轻量级的数据交换格式。它基于ECMAScript(欧洲计算机制造商协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。以下是JSON......
  • atcoder 官方dp题单题解(持续更新)
    题单链接:https://atcoder.jp/contests/dp/tasks洛谷搜索:https://www.luogu.com.cn/problem/list?keyword=at_dp&type=AT|B|CF|P|SP|UVA&page=1A题目链接:https://atcoder.jp/contests/dp/tasks/dp_a简单线性dp.dp[i]表示在i这个位置的最小代价,转移的时候把两种选择都考虑......
  • CH01_初识C++
    CH01_初识C++第一个C++程序新建项目新建文件编写代码#include<iostream>usingnamespacestd;intmain(){ cout<<"helloworld"<<endl; system("pause"); return0;}运行程序注释作用:在代码中加一些说明和解释,方便阅读代码。两种格式:单行注释://这是......