比较两个句子(枚举),并确定它们是精确匹配与否。
操作 | 描述 | C#查询表达式语法 | VB查询表达式语法 |
---|---|---|---|
SequenceEqual | 结果是一个布尔值,如果两个序列被发现是彼此相同 | 不适用 | 不适用 |
SequenceEqual例子 - Enumerable.SequenceEqual方法
C#
using System; using System.Collections.Generic; using System.Linq; namespace Operators { class SequenceEqual { static void Main(string[] args) { Pet barley = new Pet() { Name = "Barley", Age = 4 }; Pet boots = new Pet() { Name = "Boots", Age = 1 }; Pet whiskers = new Pet() { Name = "Whiskers", Age = 6 }; List<Pet> pets1 = new List<Pet>() { barley, boots }; List<Pet> pets2 = new List<Pet>() { barley, boots }; List<Pet> pets3 = new List<Pet>() { barley, boots, whiskers }; bool equal = pets1.SequenceEqual(pets2); bool equal3 = pets1.SequenceEqual(pets3); Console.WriteLine("The lists pets1 and pets2 {0} equal.", equal ? "are" :"are not"); Console.WriteLine("The lists pets1 and pets3 {0} equal.", equal3 ? "are" :"are not"); Console.WriteLine("\nPress any key to continue."); Console.ReadKey(); } class Pet { public string Name { get; set; } public int Age { get; set; } } } }
VB
Module Module1 Sub Main() Dim barley As New Pet With {.Name = "Barley", .Age = 4} Dim boots As New Pet With {.Name = "Boots", .Age = 1} Dim whiskers As New Pet With {.Name = "Whiskers", .Age = 6} Dim pets1 As New System.Collections.Generic.List(Of Pet)(New Pet() {barley, boots}) Dim pets2 As New System.Collections.Generic.List(Of Pet)(New Pet() {barley, boots}) Dim pets3 As New System.Collections.Generic.List(Of Pet)(New Pet() {barley, boots, whiskers}) Dim equal As Boolean = pets1.SequenceEqual(pets2) Dim equal3 As Boolean = pets1.SequenceEqual(pets3) Console.WriteLine("The lists pets1 and pets2 {0} equal.", IIf(equal, "are", "are not")) Console.WriteLine("The lists pets1 and pets3 {0} equal.", IIf(equal3, "are", "are not")) Console.WriteLine(vbLf & "Press any key to continue.") Console.ReadKey() End Sub Class Pet Public Property Name As String Public Property Age As Integer End Class End Module
当C#或VB的上述代码被编译和执行时,它产生了以下结果:
The lists pets1 and pets2 are equal. The lists pets1 and pets3 are not equal. Press any key to continue.
上一篇:
LINQ Set操作
下一篇:
LINQ元素操作符