Compartir a través de


Procedimiento para buscar la diferencia de conjuntos entre dos listas (LINQ) (Visual Basic)

En este ejemplo se muestra cómo usar LINQ para comparar dos listas de cadenas y generar estas líneas, que están en names1.txt pero no en names2.txt.

Para crear los archivos de datos

  1. Copie names1.txt y names2.txt en la carpeta de la solución, como se muestra en Procedimiento para combinar y comparar colecciones de cadenas (LINQ) (Visual Basic).

Ejemplo

Class CompareLists  
  
    Shared Sub Main()  
  
        ' Create the IEnumerable data sources.  
        Dim names1 As String() = System.IO.File.ReadAllLines("../../../names1.txt")  
        Dim names2 As String() = System.IO.File.ReadAllLines("../../../names2.txt")  
  
        ' Create the query. Note that method syntax must be used here.  
        Dim differenceQuery = names1.Except(names2)  
        Console.WriteLine("The following lines are in names1.txt but not names2.txt")  
  
        ' Execute the query.  
        For Each name As String In differenceQuery  
            Console.WriteLine(name)  
        Next  
  
        ' Keep console window open in debug mode.  
        Console.WriteLine("Press any key to exit.")  
        Console.ReadKey()  
    End Sub  
End Class  
' Output:  
' The following lines are in names1.txt but not names2.txt  
' Potra, Cristina  
' Noriega, Fabricio  
' Aw, Kam Foo  
' Toyoshima, Tim  
' Guy, Wey Yuan  
' Garcia, Debra  

Algunos tipos de operaciones de consulta en Visual Basic, como Except, Distinct, Union y Concat, solo pueden expresarse en una sintaxis basada en método.

Compilar el código

Cree un proyecto de aplicación de consola de Visual Basic con una instrucción Imports para el espacio de nombres System.Linq.

Consulte también