1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Listas em C#

Discussão em 'Programação' iniciada por andrepadez, 14 de Maio de 2008. (Respostas: 6; Visualizações: 8055)

  1. andrepadez

    andrepadez Power Member

    Boas preciso de juntar duas listas que são devolvidas por uma função numa 3ª Lista. Estou a usar o Concat, mas não me está a resultar. O código é este:

    Código:
     
    List<Square> possibleMoves = new List<Square>();
     
    possibleMoves.Concat (testRookMoves(square));
    possibleMoves.Concat (testBishopMoves(square));
    
    Penso que no fim, possibleMoves deveria ficar com todos os Squares devolvidos pelas duas funções, mas quando testo é zero.

    Obrigado
     
  2. Quaker

    Quaker Power Member

    Concat ??? numa lista?

    Não consegui aceder a esse método

    Penso que não existe nenhum método na List que te permita adicionar integralmente uma lista.
    Terás de percorrer a lista com um for e adicionar cada um dos elementos a lista resultante.
     
    Última edição: 14 de Maio de 2008
  3. joao.miguel

    joao.miguel Power Member

    Não será Add que queres ? É que com Concat... nem sequer conseguias compilar..
     
  4. andrepadez

    andrepadez Power Member

    Conseguir compilar, consigo, não me dá erros nenhums.

    Mas a solução do foreach parece-me bem, thanks.
     
  5. The_True_Eue

    The_True_Eue Power Member

    O que tu queres é AddRange(). Vê na MSDN (sorry por não por o link como costumo fazer, tou com pressa...)
     
  6. Quaker

    Quaker Power Member

    Sim o The_True_Eue tem razão, o que precisas é do Addrange...
    Código:
    List<String> list1 = new List<string>();
    
                list1.Add("a");
                list1.Add("b");
                list1.Add("c");
    
                List<String> list2 = new List<string>();
    
                list2.Add("d");
                list2.Add("e");
                list2.Add("f");
    
                List<String> list3 = new List<string>();
    
                list3.AddRange(list1);
                list3.AddRange(list2);
    
                foreach (String letter in list3)
                {
                    Console.WriteLine(letter);
                }
    
                Console.ReadKey();
     
    Última edição pelo moderador: 14 de Maio de 2008
  7. andrepadez

    andrepadez Power Member

    mais uma vez obrigado a todos.
     

Partilhar esta Página