zoukankan
html css js c++ java
ArrayList用法
System.Collections.ArrayList类是一个特殊的数组。通过添加和删除元素,就可以动态改变数组的长度。
一.优点
1
。支持自动改变大小的功能
2
。可以灵活的插入元素
3
。可以灵活的删除元素
二.局限性
跟一般的数组比起来,速度上差些
三.添加元素
1
.publicvirtualintAdd(objectvalue);
将对象添加到ArrayList的结尾处
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
内容为abcde
2
.publicvirtualvoidInsert(intindex,objectvalue);
将元素插入ArrayList的指定索引处
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.Insert(
0
,
"
aa
"
);
结果为aaabcde
3
.publicvirtualvoidInsertRange(intindex,ICollectionc);
将集合中的某个元素插入ArrayList的指定索引处
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
ArrayListlist2
=
newArrayList();
list2.Add(
"
tt
"
);
list2.Add(
"
ttt
"
);
aList.InsertRange(
2
,list2);
结果为abtttttcde
四.删除
a)publicvirtualvoidRemove(objectobj);
从ArrayList中移除特定对象的第一个匹配项,注意是第一个
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.Remove(
"
a
"
);
结果为bcde
2
.publicvirtualvoidRemoveAt(intindex);
移除ArrayList的指定索引处的元素
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.RemoveAt(
0
);
结果为bcde
3
.publicvirtualvoidRemoveRange(intindex,intcount);
从ArrayList中移除一定范围的元素。Index表示索引,count表示从索引处开始的数目
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.RemoveRange(
1
,
3
);
结果为ae
4
.publicvirtualvoidClear();
从ArrayList中移除所有元素。
五.排序
a)publicvirtualvoidSort();
对ArrayList或它的一部分中的元素进行排序。
ArrayListaList
=
newArrayList();
aList.Add(
"
e
"
);
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
DropDownList1.DataSource
=
aList;
//
DropDownListDropDownList1;
DropDownList1.DataBind();
结果为eabcd
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.Sort();
//
排序
DropDownList1.DataSource
=
aList;
//
DropDownListDropDownList1;
DropDownList1.DataBind();
结果为abcde
b)publicvirtualvoidReverse();
将ArrayList或它的一部分中元素的顺序反转。
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
aList.Reverse();
//
反转
DropDownList1.DataSource
=
aList;
//
DropDownListDropDownList1;
DropDownList1.DataBind();
结果为edcba
六.查找
a)publicvirtualintIndexOf(
object
);
b)publicvirtualintIndexOf(
object
,
int
);
c)publicvirtualintIndexOf(
object
,
int
,
int
);
返回ArrayList或它的一部分中某个值的第一个匹配项的从零开始的索引。没找到返回
-
1
。
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
intnIndex
=
aList.IndexOf(“a”);
//
1
nIndex
=
aList.IndexOf(“p”);
//
没找到,-1
d)publicvirtualintLastIndexOf(
object
);
e)publicvirtualintLastIndexOf(
object
,
int
);
f)publicvirtualintLastIndexOf(
object
,
int
,
int
);
返回ArrayList或它的一部分中某个值的最后一个匹配项的从零开始的索引。
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
a
"
);
//
同0
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
intnIndex
=
aList.LastIndexOf(
"
a
"
);
//
值为2而不是0
g)publicvirtualboolContains(objectitem);
确定某个元素是否在ArrayList中。包含返回true,否则返回false
七.其他
1
.publicvirtualintCapacity
{
get
;
set
;}
获取或设置ArrayList可包含的元素数。
2
.publicvirtualintCount
{
get
;}
获取ArrayList中实际包含的元素数。
Capacity是ArrayList可以存储的元素数。Count是ArrayList中实际包含的元素数。Capacity总是大于或等于Count。如果在添加元素时,Count超过Capacity,则该列表的容量会通过自动重新分配内部数组加倍。
如果Capacity的值显式设置,则内部数组也需要重新分配以容纳指定的容量。如果Capacity被显式设置为0,则公共语言运行库将其设置为默认容量。默认容量为16。
在调用Clear后,Count为0,而此时Capacity切是默认容量16,而不是0
3
.publicvirtualvoidTrimToSize();
将容量设置为ArrayList中元素的实际数量。
如果不向列表中添加新元素,则此方法可用于最小化列表的内存系统开销。
若要完全清除列表中的所有元素,请在调用TrimToSize之前调用Clear方法。截去空ArrayList会将ArrayList的容量设置为默认容量,而不是零。
ArrayListaList
=
newArrayList();
aList.Add(
"
a
"
);
aList.Add(
"
b
"
);
aList.Add(
"
c
"
);
aList.Add(
"
d
"
);
aList.Add(
"
e
"
);
//
Count=5,Capacity=16,
aList.TrimToSize();
//
Count=Capacity=5;
查看全文
相关阅读:
实验一 开发环境的熟悉(小组)
第六章家庭作业
Linux常用命令-1
Linux简介
Python for写死循环?
python将某个列表按元素值分成多个子列表
xshell 5连接NAT模式的虚拟机
python中remove的一些坑
Sender IP字段为"0.0.0.0"的ARP请求报文
免费ARP
原文地址:https://www.cnblogs.com/kokoliu/p/524410.html
最新文章
自我介绍
2019-2020-1 20191302 《信息安全专业导论》第十一周学习总结
2019-2020-20191302《信息安全专业导论》第十周学习总结
2019-2020 20191302《信息安全专业导论》第九周学习总结
2019-2020 20191302《信息安全导论》第八周学习总结
熟悉编程语言
《信息安全专业导论》第七周学习总结
斐波那契数列
20191302 《信息安全专业导论》第四周学习总结
我的黑客偶像
热门文章
20191302 《信息安全专业导论》第三周学习总结
预备作业
实验五 通讯协议设计(小组)
实验三 实时系统的移植(小组)
信息安全系统设计基础第十二周总结
20135305姚歌[3.56 3.67 6.23 6.39.6.40 6.41]
信息安全系统设计基础第十一周总结
实验四 外设驱动程序设计(小组)
实验二 固件设计(小组)
信息安全系统设计基础第十周总结
Copyright © 2011-2022 走看看