如何在列表上迭代< Object> [英] How Can I Iterate On List<Object>

查看:94
本文介绍了如何在列表上迭代< Object>的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的所有人,

hii我是c#中的新人我想知道如何迭代List< object>给我具体的输出数据

ex

Dear All,
hii iam new in c# an i want to know How can i iterate on List<object> to give me specific output data
ex

List<object> sParameterValues ;
where:
sParameterValues [0]=[1,2,3];
sParameterValues [1]=["test","new","11"];
sParameterValues [2]=["value","pla"];
                 .
                 .
sParameterValues [n]=["test3","pla","val2"];

the out put that i need

1 ^"test" ^"value" ^......n ^ "test3"  ,  2 ^"new" ^"pla" ^......n ^ "pla" ,3^"11"^" "^......n ^"val2"





谢谢



thanks

推荐答案

你当然需要自己学习迭代,这是主题y你不能不知道:

https://msdn.microsoft.com /en-us/library/ch45axte.aspx [ ^ ],

https://msdn.microsoft .com / zh-CN / library / ttw7t8t6.aspx [ ^ ]。



请注意 foreach 循环基于实现的对象System.IEnumerable接口,当然由所有数组,列表和其他集合实现:

https://msdn.microsoft.com/en-us/library/system.collections.ienumerable%28v=vs.110%29.aspx [ ^ ]。



但是首先,彻底检查问题;您可能根本不需要自己迭代,因为您可以使用可用的方法,这些方法只需要在每次迭代时调用委托类型的方法参数。请参阅:

https:// msdn。 microsoft.com/en-us/library/bb548541(v=vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb337697(v = vs.110)的.aspx [<一个href =https://msdn.microsoft.com/en-us/library/bb337697(v=vs.110).aspx\"target =_ blanktitle =New Window> ^ ],

https://msdn.microsoft.com/ en-us / library / bb534972(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb291976(v=vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/ library / bb535050(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb340482(v = vs.110).aspx [ ^ ],

< a href =https://msdn.microsoft.com/en-us/library/bb549039(v=vs.110).aspx> https://msdn.microsoft.com/en-us/library/bb549039( v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb358775(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb549138(v=vs .110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb301849(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/bb548915(v=vs.110)。 aspx [ ^ ]。



等等。 无论谁有眼睛,请让他们阅读。



-SA
You certainly need to learn iterations by yourself, this is the topic you cannot afford being ignorant about:
https://msdn.microsoft.com/en-us/library/ch45axte.aspx[^],
https://msdn.microsoft.com/en-us/library/ttw7t8t6.aspx[^].

Note that foreach loop is based on the objects implementing System.IEnumerable interface, which is of course implemented by all arrays, lists, and other collections:
https://msdn.microsoft.com/en-us/library/system.collections.ienumerable%28v=vs.110%29.aspx[^].

But first of all, examine the problem thoroughly; you may not need to iterate by yourself at all, because you can use available methods which just take the method argument of the delegate type used to be called on each iteration. Please see:
https://msdn.microsoft.com/en-us/library/bb548541(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb337697(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb534972(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb291976(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb535050(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb340482(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb549039(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb358775(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb549138(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb301849(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/bb548915(v=vs.110).aspx[^].

And so on. Whoever has eyes, let them read.

—SA


尝试这样的事情





Try something like this


List<object> sParameterValues = new List<object>(4);

 sParameterValues.Add( new int[] { 1, 2, 3 }) ;
 sParameterValues.Add(  new string[] { "test", "new", "11" });
sParameterValues.Add(  new string[] { "value", "pla" });
sParameterValues.Add(  new string[] { "test3", "pla", "val2" });

 var intArray = sParameterValues[0] as int[];
 for (int i = 0; i < intArray.Length; i++)
 {
     string content = intArray[i] + " -> ";
     for (int j = 1; j < sParameterValues.Count; j++)
     {
         string[] temp = sParameterValues[j] as string[];
         if (temp.Length > i)
             content += temp[i] + "  ";
     }
     System.Console.WriteLine(content);
 }

 System.Console.ReadLine();


这篇关于如何在列表上迭代&lt; Object&gt;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆