StringBuilder.Equals Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| Equals(ReadOnlySpan<Char>) |
Retorna um valor que indica se os caracteres nesta instância são iguais aos caracteres em um intervalo de caracteres somente leitura especificado. |
| Equals(StringBuilder) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. |
Equals(ReadOnlySpan<Char>)
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
Retorna um valor que indica se os caracteres nesta instância são iguais aos caracteres em um intervalo de caracteres somente leitura especificado.
public:
bool Equals(ReadOnlySpan<char> span);
public bool Equals(ReadOnlySpan<char> span);
override this.Equals : ReadOnlySpan<char> -> bool
Public Function Equals (span As ReadOnlySpan(Of Char)) As Boolean
Parâmetros
- span
- ReadOnlySpan<Char>
O intervalo de caracteres a ser comparado com a instância atual.
Retornos
true se os caracteres nesta instância e span forem os mesmos; caso contrário, false.
Comentários
O Equals método executa uma comparação ordinal para determinar se os caracteres na instância atual e span são iguais.
Aplica-se a
Equals(StringBuilder)
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
- Origem:
- StringBuilder.cs
Retorna um valor que indica se essa instância é igual a um objeto especificado.
public:
bool Equals(System::Text::StringBuilder ^ sb);
public bool Equals(System.Text.StringBuilder sb);
public bool Equals(System.Text.StringBuilder? sb);
override this.Equals : System.Text.StringBuilder -> bool
Public Function Equals (sb As StringBuilder) As Boolean
Parâmetros
Um objeto a ser comparado com essa instância ou null.
Retornos
No .NET (Core), true se os caracteres nesta instância e sb forem iguais; caso contrário, false.
No .NET Framework, true se essa instância e sb tiver cadeia de caracteres igual, Capacitye MaxCapacity valores; caso contrário, false.
Exemplos
O código a seguir usa o Equals método para verificar se dois StringBuilder objetos são iguais. O método é chamado repetidamente depois que pequenas alterações são feitas em cada objeto e os resultados são exibidos no console.
using System;
using System.Text;
StringBuilder sb1 = new("abc");
StringBuilder sb2 = new("abc", 16);
Console.WriteLine();
Console.WriteLine($"a1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}");
Console.WriteLine($"a2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}");
Console.WriteLine($"a3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\"");
Console.WriteLine($"a4) sb1 equals sb2: {sb1.Equals(sb2)}");
Console.WriteLine();
Console.WriteLine("Ensure sb1 has a capacity of at least 50 characters.");
sb1.EnsureCapacity(50);
Console.WriteLine();
Console.WriteLine($"b1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}");
Console.WriteLine($"b2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}");
Console.WriteLine($"b3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\"");
Console.WriteLine($"b4) sb1 equals sb2: {sb1.Equals(sb2)}");
Console.WriteLine();
Console.WriteLine("Set the length of sb1 to zero.");
Console.WriteLine("Set the capacity of sb2 to 51 characters.");
sb1.Length = 0;
sb2.Capacity = 51;
Console.WriteLine();
Console.WriteLine($"c1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}");
Console.WriteLine($"c2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}");
Console.WriteLine($"c3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\"");
Console.WriteLine($"c4) sb1 equals sb2: {sb1.Equals(sb2)}");
/*
The example displays the following output:
a1) sb1.Length = 3, sb1.Capacity = 16
a2) sb2.Length = 3, sb2.Capacity = 16
a3) sb1.ToString() = "abc", sb2.ToString() = "abc"
a4) sb1 equals sb2: True
Ensure sb1 has a capacity of at least 50 characters.
b1) sb1.Length = 3, sb1.Capacity = 50
b2) sb2.Length = 3, sb2.Capacity = 16
b3) sb1.ToString() = "abc", sb2.ToString() = "abc"
b4) sb1 equals sb2: True (False on .NET Framework)
Set the length of sb1 to zero.
Set the capacity of sb2 to 51 characters.
c1) sb1.Length = 0, sb1.Capacity = 50
c2) sb2.Length = 3, sb2.Capacity = 51
c3) sb1.ToString() = "", sb2.ToString() = "abc"
c4) sb1 equals sb2: False
*/
open System.Text
let sb1 = StringBuilder "abc"
let sb2 = StringBuilder("abc", 16)
printfn $"a1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}"
printfn $"a2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}"
printfn $"a3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\""
printfn $"a4) sb1 equals sb2: {sb1.Equals sb2}"
printfn "\nEnsure sb1 has a capacity of at least 50 characters."
sb1.EnsureCapacity 50 |> ignore
printfn $"\nb1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}"
printfn $"b2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}"
printfn $"b3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\""
printfn $"b4) sb1 equals sb2: {sb1.Equals sb2}"
printfn "\nSet the length of sb1 to zero."
printfn "Set the capacity of sb2 to 51 characters."
sb1.Length <- 0
sb2.Capacity <- 51
printfn $"\nc1) sb1.Length = {sb1.Length}, sb1.Capacity = {sb1.Capacity}"
printfn $"c2) sb2.Length = {sb2.Length}, sb2.Capacity = {sb2.Capacity}"
printfn $"c3) sb1.ToString() = \"{sb1}\", sb2.ToString() = \"{sb2}\""
printfn $"c4) sb1 equals sb2: {sb1.Equals sb2}"
// The example displays the following output:
// a1) sb1.Length = 3, sb1.Capacity = 16
// a2) sb2.Length = 3, sb2.Capacity = 16
// a3) sb1.ToString() = "abc", sb2.ToString() = "abc"
// a4) sb1 equals sb2: True
//
// Ensure sb1 has a capacity of at least 50 characters.
//
// b1) sb1.Length = 3, sb1.Capacity = 50
// b2) sb2.Length = 3, sb2.Capacity = 16
// b3) sb1.ToString() = "abc", sb2.ToString() = "abc"
// b4) sb1 equals sb2: True (False on .NET Framework)
//
// Set the length of sb1 to zero.
// Set the capacity of sb2 to 51 characters.
//
// c1) sb1.Length = 0, sb1.Capacity = 50
// c2) sb2.Length = 3, sb2.Capacity = 51
// c3) sb1.ToString() = "", sb2.ToString() = "abc"
// c4) sb1 equals sb2: False
Imports System.Text
Class Sample
Public Shared Sub Main()
Dim sb1 As New StringBuilder("abc")
Dim sb2 As New StringBuilder("abc", 16)
Console.WriteLine()
Console.WriteLine("a1) sb1.Length = {0}, sb1.Capacity = {1}", sb1.Length, sb1.Capacity)
Console.WriteLine("a2) sb2.Length = {0}, sb2.Capacity = {1}", sb2.Length, sb2.Capacity)
Console.WriteLine("a3) sb1.ToString() = ""{0}"", sb2.ToString() = ""{1}""", _
sb1.ToString(), sb2.ToString())
Console.WriteLine("a4) sb1 equals sb2: {0}", sb1.Equals(sb2))
Console.WriteLine()
Console.WriteLine("Ensure sb1 has a capacity of at least 50 characters.")
sb1.EnsureCapacity(50)
Console.WriteLine()
Console.WriteLine("b1) sb1.Length = {0}, sb1.Capacity = {1}", sb1.Length, sb1.Capacity)
Console.WriteLine("b2) sb2.Length = {0}, sb2.Capacity = {1}", sb2.Length, sb2.Capacity)
Console.WriteLine("b3) sb1.ToString() = ""{0}"", sb2.ToString() = ""{1}""", _
sb1.ToString(), sb2.ToString())
Console.WriteLine("b4) sb1 equals sb2: {0}", sb1.Equals(sb2))
Console.WriteLine()
Console.WriteLine("Set the length of sb1 to zero.")
Console.WriteLine("Set the capacity of sb2 to 51 characters.")
sb1.Length = 0
sb2.Capacity = 51
Console.WriteLine()
Console.WriteLine("c1) sb1.Length = {0}, sb1.Capacity = {1}", sb1.Length, sb1.Capacity)
Console.WriteLine("c2) sb2.Length = {0}, sb2.Capacity = {1}", sb2.Length, sb2.Capacity)
Console.WriteLine("c3) sb1.ToString() = ""{0}"", sb2.ToString() = ""{1}""", _
sb1.ToString(), sb2.ToString())
Console.WriteLine("c4) sb1 equals sb2: {0}", sb1.Equals(sb2))
End Sub
End Class
'The example displays the following output:
' a1) sb1.Length = 3, sb1.Capacity = 16
' a2) sb2.Length = 3, sb2.Capacity = 16
' a3) sb1.ToString() = "abc", sb2.ToString() = "abc"
' a4) sb1 equals sb2: True
'
' Ensure sb1 has a capacity of at least 50 characters.
'
' b1) sb1.Length = 3, sb1.Capacity = 50
' b2) sb2.Length = 3, sb2.Capacity = 16
' b3) sb1.ToString() = "abc", sb2.ToString() = "abc"
' b4) sb1 equals sb2: True (False on .NET Framework)
'
' Set the length of sb1 to zero.
' Set the capacity of sb2 to 51 characters.
'
' c1) sb1.Length = 0, sb1.Capacity = 50
' c2) sb2.Length = 3, sb2.Capacity = 51
' c3) sb1.ToString() = "", sb2.ToString() = "abc"
' c4) sb1 equals sb2: False
Comentários
.NET Framework e .NET Core 2.2 e versões anteriores: A instância atual e sb são iguais se tiverem cadeia Capacityde caracteres igual e MaxCapacity valores. O Equals método usa comparação ordinal para determinar se as cadeias de caracteres são iguais.
.NET Core 3.0 e versões posteriores: A instância atual e sb são iguais se as cadeias de caracteres atribuídas a ambos os StringBuilder objetos forem iguais. Para determinar a igualdade, o Equals método usa a comparação ordinal. Os Capacity valores e MaxCapacity a propriedade não são usados na comparação.