StringBuilder.Equals メソッド
定義
オーバーロード
Equals(ReadOnlySpan<Char>) |
このインスタンスの文字が、指定された読み取り専用の文字範囲内の文字と同じであるかどうかを示す値を返します。Returns a value indicating whether the characters in this instance are equal to the characters in a specified read-only character span. |
Equals(StringBuilder) |
このインスタンスが指定されたオブジェクトに等しいかどうかを示す値を返します。Returns a value indicating whether this instance is equal to a specified object. |
Equals(ReadOnlySpan<Char>)
このインスタンスの文字が、指定された読み取り専用の文字範囲内の文字と同じであるかどうかを示す値を返します。Returns a value indicating whether the characters in this instance are equal to the characters in a specified read-only character span.
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
パラメーター
- span
- ReadOnlySpan<Char>
現在のインスタンスと比較する文字範囲。The character span to compare with the current instance.
戻り値
このインスタンスの文字と span
が同じである場合は true
。それ以外の場合は false
。true
if the characters in this instance and span
are the same; otherwise, false
.
注釈
メソッドは、 Equals
序数に基づく比較を実行して、現在のインスタンスとの文字が等しいかどうかを判断し span
ます。The Equals
method performs an ordinal comparison to determine whether the characters in the current instance and span
are equal.
適用対象
Equals(StringBuilder)
このインスタンスが指定されたオブジェクトに等しいかどうかを示す値を返します。Returns a value indicating whether this instance is equal to a specified object.
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
パラメーター
対象のインスタンスと比較する対象のオブジェクト、または null
。An object to compare with this instance, or null
.
戻り値
このインスタンスと sb
が同じ文字列、Capacity 値、および MaxCapacity 値を保持している場合は true
。それ以外の場合は false
。true
if this instance and sb
have equal string, Capacity, and MaxCapacity values; otherwise, false
.
例
次のコードでは、メソッドを使用して、 Equals 2 つのオブジェクトが等しいかどうかを確認し StringBuilder ます。The following code uses the Equals method to check whether two StringBuilder objects are equal. 各オブジェクトに小さな変更が加えられると、メソッドが繰り返し呼び出され、結果がコンソールに表示されます。The method is called repeatedly after small changes are made to each object, and the results are displayed to the console.
using namespace System;
using namespace System::Text;
int main()
{
StringBuilder^ sb1 = gcnew StringBuilder( "abc" );
StringBuilder^ sb2 = gcnew 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 = \"{0}\", sb2 = \"{1}\"", sb1, sb2 );
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 = \"{0}\", sb2 = \"{1}\"", sb1, sb2 );
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 = \"{0}\", sb2 = \"{1}\"", sb1, sb2 );
Console::WriteLine( "c4) sb1 equals sb2: {0}", 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 = "abc", sb2 = "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 = "abc", sb2 = "abc"
b4) sb1 equals sb2: False
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 = "", sb2 = "abc"
c4) sb1 equals sb2: False
*/
using System;
using System.Text;
class Sample
{
public static void Main()
{
StringBuilder sb1 = new StringBuilder("abc");
StringBuilder sb2 = 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));
}
}
/*
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: False
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: False
'
' 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
注釈
.NET Framework および .Net Core 2.2 以前のバージョン: 現在のインスタンスと sb
は、同じ文字列、、およびの値を持つ場合に等しい Capacity MaxCapacity です。.NET Framework and .NET Core 2.2 and previous versions: The current instance and sb
are equal if they have equal string, Capacity, and MaxCapacity values. この Equals
メソッドは、序数に基づく比較を使用して、文字列が等しいかどうかを判断します。The Equals
method uses ordinal comparison to determine whether the strings are equal.
.Net Core 3.0 以降のバージョン: 現在のインスタンスと sb
は、両方のオブジェクトに割り当てられた文字列が同じである場合に等しく StringBuilder なります。.NET Core 3.0 and later versions: The current instance and sb
are equal if the strings assigned to both StringBuilder objects are the same. 等しいかどうかを判断するために、メソッドは序数による Equals
比較を使用します。To determine equality, the Equals
method uses ordinal comparison. Capacityとの MaxCapacity プロパティ値は、比較では使用されません。The Capacity and MaxCapacity property values are not used in the comparison.