2

カスタムクラスを保持するList「bigList」があります。List'bigList' 内に 20 個のリストがある場合、内部リストの 1 つのカウントを取得するにはどうすればよいでしょうか?

List<List<myClass>> bigList = new List<List<myClass>>();
for (int i = 0; i < 20; i++)
{
     List<myClass> newList = new List<myClass>();

     for (int i = 0; i < 100; i++)
     {
          newList.Add(myClass);
     }
     bigList.Add(newList);
}

この例では、bigList 内のリストの数を取得するにはどうすればよいですか? リストを格納してからインデックスを使用してリストの数を計算したため、これを間違って行っているListほど作業していません。ArrayListArrayList

4

6 に答える 6

7

i番目のリストのCountプロパティを取得するには、次のようにします。

var s = bigList[i].Count;

各内部リスト内の合計項目を取得するには、次のようにします。

bigList.Sum(x => x.Count);
于 2013-03-20T18:36:38.190 に答える
3
// To get the number of Lists which bigList holds
bigList.Count();

// To get the number of items in each List of bigList
bigList.Select(x => new {List = x, Count = x.Count()});

// To get the count of all items in all Lists of bigList
bigList.Sum(x => x.Count());
于 2013-03-20T18:36:56.020 に答える
2

次のようなものはどうですか:

bigList.Sum(smallList => smallList.Count ());
于 2013-03-20T18:38:01.970 に答える
1
bigList[0].Count; //accesses the first element of the big list and retrieves the number of elements of that list item

または、大きなリスト内のすべての要素の foreach ループで:

for (var item in bigList)
{
   Console.WriteLine(item.Count); // print number of elements for every sublist in bigList
}

List/ArrayList はすべて IList インターフェイスを実装しているため、同じ方法で使用できます。

于 2013-03-20T18:38:45.740 に答える
1
foreach (List<myClass> innerList in bigList)
{
     int count = innerList.Count;
}
于 2013-03-20T18:37:08.140 に答える
1

どうですか:

foreach(var innerList in bigList)
    var size = innerList.Count; //use the size variable
于 2013-03-20T18:38:01.230 に答える