博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# ArrayList(数组列表)
阅读量:6720 次
发布时间:2019-06-25

本文共 2353 字,大约阅读时间需要 7 分钟。

专题图:ylbtech-.net 编号:ylbtech  DotNet100010013

1,ArrayList(数组列表)

 Implements the IList interface using an array whose size is dynamically increased as required.

【提供一些方法,用于创建、处理、搜索数组并对数组进行排序,从而充当公共语言运行时中所有数组的基类。】

命名空间:  

程序集:  mscorlib(在 mscorlib.dll 中)

2,Syntax(语法)

  

[SerializableAttribute]
[ComVisibleAttribute(
true
)]
public 
class 
ArrayList : IList, ICollection,
    
IEnumerable, ICloneable

 

 3,备注:

ArrayList 可能并不总是提供特定任务的最佳性能。 有关这些类相对性能的讨论参见。 List<T> “性能注意事项”部分引用主题。

ArrayList 不保证是排序的。 在执行需要对 ArrayList 排序的操作(如 BinarySearch)之前,必须对 ArrayList 进行排序。

ArrayList 的容量是 ArrayList 可以包含的元素数。 随着向 ArrayList 中添加元素,容量通过重新分配按需自动增加。 可通过调用 TrimToSize 或通过显式设置 Capacity 属性减少容量。

对于非常大 ArrayList 对象,则在运行时环境 (ide) 中增加最大容量为 20亿在 64 位系统的元素通过设置 gcAllowVeryLargeObjects 配置元素的 enabled 属性设置为 true 。

可使用一个整数索引访问此集合中的元素。 此集合中的索引从零开始。

ArrayList 集合接受 null 作为有效值并且允许重复的元素。

不支持将多维数组用作 ArrayList 集合中的元素。


引用:

4,ArrayList【示例】

 

using 
System;
using 
System.Collections;
 
namespace 
ConsoleApplication1
{
    
class 
Program
    
{
        
/// <summary>
        
/// ylb_menu:ArrayList(数组列表)
        
/// </summary>
        
/// <param name="args"></param>
        
static 
void 
Main(
string
[] args)
        
{
 
 
            
ArrayList al =
new 
ArrayList(5);
 
            
//添加
            
al.Add(
"sunshine"
);
            
al.Add(
"rain"
);
            
al.Add(
"sun"
);
            
al.Add(
"rain"
);
 
            
//查找项
            
if 
(al.Contains(
"sunshine"
))
            
{
                
Console.WriteLine(
"数组包含“sunshine”"
);
            
}
 
            
//清空数组
            
//al.Clear();
 
            
Console.WriteLine(
"数组的个数" 
+ al.Count);
             
            
//查找根据值,得到元素索引位置
            
//IndexOf
            
Console.WriteLine(al.IndexOf(
"yuanbo"
));
            
Console.WriteLine(al.IndexOf(
"rain"
));
            
Console.WriteLine(al.IndexOf(
"rain"
, 0));
            
Console.WriteLine(al.IndexOf(
"rain"
, 2, 2));
            
//LastIndexOf
            
Console.WriteLine(al.LastIndexOf(
"rain"
));
 
            
//遍历
            
Graph(al);
            
//插入一个项
            
al.Insert(2,
"snoopy"
);
            
Graph(al);
             
            
//反转
            
al.Reverse();
            
Graph(al);
 
            
//排序
            
al.Sort();
            
Graph(al);
 
            
//移除
            
al.Remove(
"sunshine"
); 
//根据项
            
Graph(al); 
            
al.RemoveAt(2);
//下标
            
Graph(al);
 
            
把数组转化为字符串
            
//Console.WriteLine(al.ToString());
 
            
//Array arr=al.ToArray();
            
//for (int i = 0;i< arr.Length; i++)
            
//{
            
//    Console.Write(arr.ToString());
            
//}
            
string
[] strs=
new 
string
[al.Count];
 
            
//付给字符串数组
            
al.CopyTo(strs);
 
            
foreach
(
string 
s
in 
strs)
            
{
                
Console.Write(s +
"\t"
);
            
}
        
}
        
/// <summary>
        
/// 遍历数组
        
/// </summary>
        
/// <param name="al"></param>
        
static 
void 
Graph(ArrayList al)
        
{
            
foreach 
(
string 
a
in 
al)
            
{
                
Console.Write(a+
"\t"
);
            
}
            
Console.Write(
"\n"
);
        
}
    
}
}

 

本文转自ylbtech博客园博客,原文链接:http://www.cnblogs.com/ylbtech/archive/2012/08/27/2657434.html,如需转载请自行联系原作者

你可能感兴趣的文章
行政笔记
查看>>
腾讯空间、新浪微博、腾讯微博登录接口
查看>>
nginx 随机启动脚本配置说明
查看>>
2.MySQL源码安装
查看>>
RabbitMQ系列二:管理RabbitMQ
查看>>
ospf虚拟链路
查看>>
Spring的一些配置文件的使用
查看>>
芒果数据库配置文件
查看>>
大路考注意事项
查看>>
UIImagePickerController-设置相机(全屏)
查看>>
CodeSmith学习记录 --准备工作
查看>>
第五课作业
查看>>
Linux文本处理三剑客(grep,sed,awk)
查看>>
西部开源学习笔记《unit 11》
查看>>
Tomcat理论介绍
查看>>
程序员,你有多久没关爱自己了?
查看>>
java循环练习:输入一个字符串,统计该字符串中分别包含多少个数字,多少个字母,多少个其他字符...
查看>>
PL/SQL结构
查看>>
TX Text Control文字处理教程(7)邮件合并
查看>>
ActiveReports 报表应用教程 (6)---分组报表
查看>>