C# 怎么把ArrayList数组进行循环?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 怎么把ArrayList数组进行循环?相关的知识,希望对你有一定的参考价值。
参考技术A你做一个主程序,嵌套如下程序:
ArrayList l = new ArrayList();
l.Add(1);
l.Add(2); //添加测试数据
int a = 0;
for (int i = 0; i < l.Count; i++)
a=(int)l[i]; //遍历,并且赋值给了a
1、什么是ArrayList
ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:
动态的增加和减少元素
实现了ICollection和IList接口
灵活的设置数组的大小
2、如何使用ArrayList
最简单的例子:
?
12345678
ArrayList List = new ArrayList();for( int i=0;i <10;i++ ) //给数组增加10个Int元素List.Add(i);//..程序做一些处理List.RemoveAt(5);//将第6个元素移除for( int i=0;i <3;i++ ) //再增加3个元素List.Add(i+20);Int32[] values = (Int32[])List.ToArray(typeof(Int32));//返回ArrayList包含的数组这是一个简单的例子,虽然没有包含ArrayList所有的方法,但是可以反映出ArrayList最常用的用法
3、ArrayList重要的方法和属性
1)构造器
ArrayList提供了三个构造器:
public ArrayList();
默认的构造器,将会以默认(16)的大小来初始化内部的数组
public ArrayList(ICollection);
用一个ICollection对象来构造,并将该集合的元素添加到ArrayList
public ArrayList(int);
用指定的大小来初始化内部的数组
2)IsSynchronized属性和ArrayList.Synchronized方法
IsSynchronized属性指示当前的ArrayList实例是否支持线程同步,而ArrayList.Synchronized静态方法则会返回一个ArrayList的线程同步的封装。
如果使用非线程同步的实例,那么在多线程访问的时候,需要自己手动调用lock来保持线程同步
java中的toArray(数组名字)是啥意思,要把数组怎么处理?
您好,提问者:
您是说ArrayList中的toArray()方法?
public class ArrayList_toArrayDemo
//举个例子
public static void main(String[] args)
ArrayList list = new ArrayList();
list.add("asd");
list.add("fdg");
//这个toArray(),其实就是转换为数组
String[] arr = new String[list.size()];
arr = list.toArray();
追问
谢谢了,以后有问题再请教你!你的回答也非常好,希望你的回答能对别人有帮助!
追答嗯,好的。
参考技术A 把集合数据转成数组存储追问我也是这么理解的哈。
顺便问下:
把集合数据转成数组存储的目的是什么?能简单说一下么?
我把集合和数组的区别大概列一下:
1、数组特点高效、保存基本类型,集合带array的底层由数组实现,还有一部分由链表或者树实现
2、数组大小固定(巨大缺点,内存中一定连续),集合各种实现吧!
3、数组只能放一种类型,集合不考虑泛型可以存很多类型。
4、集合放原始类型其实是通过装箱拆箱来实现的,说白了以前原生类型只能用数组,现在集合也可以了。
目的的话如果不是业务需求需要(比如数组的元素可重复、有序),可能是因为数组可以调用很多封装好的方法。
以上是关于C# 怎么把ArrayList数组进行循环?的主要内容,如果未能解决你的问题,请参考以下文章