2010-06-07 6 views
5

List<T>과 비슷한 것을 찾고 있는데, 복수형 T을 가질 수 있습니다. 예 : List<TabItem, DataGrid, int, string, ...> = new List<TabItem, DataGrid, int, string, ...>().목록의 여러 개체, C#

+1

이러한 유형 중 하나를 저장할 수있는 일반 목록을 원하십니까 ... 아니면 해당 유형의 그룹을 저장할 수있는 일반 목록을 원하십니까 (즉, 각 요소는 연관된 TabItem, DataGrid, int, string입니다. , 등)? –

+0

이상적으로 ...이 목록을 어떻게 사용하거나 소비합니까? –

답변

14

을, 당신이 그렇지 않으면 List<Tuple<T1, T2, ...>>

을 가질 수있다, 당신의 선택은 당신의 자신의 유형을 구현하는 것입니다 .

+1

내 대답. –

+0

List >이 필요하지 않습니다. 터플 만 괜찮습니다. – Cheung

7

데이터 구조를 정의하는 클래스를 작성, 당신은 .NET 4 사용하는 경우 다음

var list = new List<MyClass>(); 
+0

구조가 클래스보다 좋을 것입니다. – Harsha

+1

@Harsha :이 성명서를 작성하려면 최소한 이유를 설명하십시오. – AMissico

+0

안녕하세요, 여기 구조가 클래스보다 낫다는 것을 말하는 링크가 있지만 데이터가 거의없는 경우에만 나타납니다. 여기 링크입니다 : 내가 입력 한대로이에있어 http://social.msdn.microsoft.com/forums/en-US/Vsexpressvb/thread/6923cbe6-12b7-4e97-a4f5-3d9ebdfc75f2 – Harsha

1

일반적으로 List<MyClass>인데 MyClass에는 다른 모든 멤버가 있습니다.

1

이전 형식을 사용할 수 있으면 ArrayList를 사용해야합니다.

당신이 거기에 무엇을 가지고 있을지 미리 안다면, 당신 자신의 구조를 만들거나 튜플을 사용해야합니다.

-1

List<object>을 (를) 사용중인 것 같습니다.

-1

터플은 .net 4.0을 사용하는 경우 가장 좋습니다. 하지만 3.5 이하로 작업하면 다차원 객체 배열이 좋습니다. 여기에 코드가 있습니다. 나는 객체 배열에 3 가지 다른 유형을 추가했으며 같은 것을 목록에 넣었다. 귀하의 질문에 대한 최상의 솔루션이되지 않을 수 있습니다, 개체 배열 및 목록으로 얻을 수 있습니다. 코드를 살펴보십시오.

class Program 
{ 
    static void Main(string[] args) 
    { 
     object[,] OneObject = new object[1,3]{ {"C Sharp",4,3.5 }}; 
     List<object> MyList = new List<object>(); 
     MyList.Add(OneObject); 
     object[,] addObject = new object[1,3]{{"Java",1,1.1}}; 
     MyList.Add(addObject); 

     foreach(object SingleObject in MyList) 
     { 
      object[,] MyObject = (object[,])SingleObject; 

      Console.WriteLine("{0},{1},{2}", MyObject[0, 0], MyObject[0, 1], MyObject[0, 2]); 
     } 

     Console.Read(); 
    } 
} 
-1

C# 4를 사용하는 대신 여기에서 이전 버전 기능을 사용할 수 있습니다.

여기에 강력한 형식의 컬렉션이 필요하지 않은 것 같습니다.이 경우 ArrayList가 가장 좋습니다.