1

ここに私の問題があります: オブジェクト「Strip」があり、これらのストリップのリストまたは配列「stripList」が必要です。その後、「listOfStripList」と呼ばれる別の stripList からのリストが必要です。私はこの方法で保存できることを知っています:

List<List<Strip>> listOfStripList=new List<List<Strip>>();

このオブジェクトをこのようにしたい理由は、毎回 For ループを使用せずに各 stripList にアクセスしたいからです。たとえば、listOfStripList[1] と言いたいのですが、これはストリップの最初のリストに関連しています。

これらのリストを配列で定義する方法はありますか?

4

2 に答える 2

0

listOfStripList[0]List<Strip> あなたにオブジェクトを与えるでしょう。呼び出すlistOfStripList[0][0]と、最初のリストの最初のアイテムが表示されますlistOfStripList

ここにフィドルがあります: https://dotnetfiddle.net/XdDggB

using System;
using System.Collections.Generic;

public class Program
{
    public static void Main()
    {
        List<List<Strip>> listOfStripLists = new List<List<Strip>>();

        for(int j = 65; j < 100; j++){

            List<Strip> stripList = new List<Strip>();

            for(int i = 0; i < 10; i++){
                stripList.Add(new Strip(){myval = ((char)j).ToString() + i.ToString()});
            }

            listOfStripLists.Add(stripList);
        }// end list of list

        Console.WriteLine(listOfStripLists[0][1].myval);
    }


    public class Strip
    {
        public string myval {get;set;}  
    }
}
于 2015-01-16T22:20:18.217 に答える
0

List<T>T[]どちらもインデクサー (別名[]オペレーター)を使用できます。したがって、次のようにリストを使用できます。

List<Strip> firstList = listOfStripList[0];

ただし、配列として保持する必要がある場合は、次のようにすることができます。

List<Strip>[] arrayOfListStrip = listOfStripList.ToArray();
于 2015-01-16T22:12:29.067 に答える