LINQ 中的相等
比较两个句子(可枚举),并确定两者是否完全匹配。
| 运算符 | 描述 | 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_query_operators.htm
广告