怎么遍历ArrayList中的list呢?
list中有已经存了数据,那么我把这个list放在了一个arraylist中,那么我怎么遍历得到我list中的数据呢...
list中有已经存了数据,那么我把这个list放在了一个arraylist中,那么我怎么遍历得到我list中的数据呢
展开
4个回答
2013-09-18
展开全部
对List的遍历有三种方式
List<A> list = new ArrayList<A>();
list.add(new A());
list.add(new A());
...
第一种:
for(Iterator<A> it = list.iterator(); it.hasNext(); ) {
....
}
这种方式在循环 执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在寻欢过程中去掉某个元素,只能调用it.remove方法, 不能使用list.remove方法, 否则一定出并发访问的错误.
第二种:
for(A a : list) {
.....
}
内部调用第一种, 换汤不换药, 这种循环方式还有其他限制, 不建议使用它
第三种:
for(int i=0; i<list.size(); i++) {
A a = list.get(i);
...
}
内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题!
List<A> list = new ArrayList<A>();
list.add(new A());
list.add(new A());
...
第一种:
for(Iterator<A> it = list.iterator(); it.hasNext(); ) {
....
}
这种方式在循环 执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在寻欢过程中去掉某个元素,只能调用it.remove方法, 不能使用list.remove方法, 否则一定出并发访问的错误.
第二种:
for(A a : list) {
.....
}
内部调用第一种, 换汤不换药, 这种循环方式还有其他限制, 不建议使用它
第三种:
for(int i=0; i<list.size(); i++) {
A a = list.get(i);
...
}
内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题!
2013-09-18
展开全部
protected void Page_Load(object sender, EventArgs e)
{
//这是你想要要入进入的Arraylist
ArrayList al = new ArrayList();
al.Add(1);
al.Add("haha");
//下面这个是你的list
ArrayList list = new ArrayList();
list.Add("dsfasdf");
list.Add(1.23);
//将list压入al中
al.Add(list); //将list从al中取出来
foreach (object obj in al)
{
ArrayList list1 = obj as ArrayList;
if (list1 != null)
{
Response.Write("取到我要的list了");
}
}
} 楼主可以测试 不清楚再问
{
//这是你想要要入进入的Arraylist
ArrayList al = new ArrayList();
al.Add(1);
al.Add("haha");
//下面这个是你的list
ArrayList list = new ArrayList();
list.Add("dsfasdf");
list.Add(1.23);
//将list压入al中
al.Add(list); //将list从al中取出来
foreach (object obj in al)
{
ArrayList list1 = obj as ArrayList;
if (list1 != null)
{
Response.Write("取到我要的list了");
}
}
} 楼主可以测试 不清楚再问
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-18
展开全部
static void Main(string[] args)
{
string[] str ={ "wwe", "sfsd" };
// System.Collections.ArrayList arr = new System.Collections.ArrayList(str);
System.Collections.ArrayList arr = new System.Collections.ArrayList();
arr.AddRange(str);
arr.Add("sdfsfs");
arr.Add("str");
for (int i = 0; i < arr.Count; i++)
{
Console.WriteLine(arr[i].ToString());
}
Console.WriteLine("\n");
foreach (object o in arr)
{
Console.WriteLine(o.ToString() + " ");
}
Console.WriteLine("\n");
System.Collections.IEnumerator ie = arr.GetEnumerator();
while (ie.MoveNext())
{
Console.WriteLine(ie.Current.ToString() + " ");
}
}
{
string[] str ={ "wwe", "sfsd" };
// System.Collections.ArrayList arr = new System.Collections.ArrayList(str);
System.Collections.ArrayList arr = new System.Collections.ArrayList();
arr.AddRange(str);
arr.Add("sdfsfs");
arr.Add("str");
for (int i = 0; i < arr.Count; i++)
{
Console.WriteLine(arr[i].ToString());
}
Console.WriteLine("\n");
foreach (object o in arr)
{
Console.WriteLine(o.ToString() + " ");
}
Console.WriteLine("\n");
System.Collections.IEnumerator ie = arr.GetEnumerator();
while (ie.MoveNext())
{
Console.WriteLine(ie.Current.ToString() + " ");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-18
展开全部
前者很仔细讲的,就是它
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询