Encoding.Equals(Object) Metoda

Definicja

Określa, czy określony element Object jest równy bieżącemu wystąpieniu.Determines whether the specified Object is equal to the current instance.

public:
 override bool Equals(System::Object ^ value);
public override bool Equals (object value);
public override bool Equals (object? value);
override this.Equals : obj -> bool
Public Overrides Function Equals (value As Object) As Boolean

Parametry

value
Object

ObjectDo porównania z bieżącym wystąpieniem.The Object to compare with the current instance.

Zwraca

Boolean

true Jeśli value jest wystąpieniem Encoding i jest równe bieżącemu wystąpieniu; w przeciwnym razie, false .true if value is an instance of Encoding and is equal to the current instance; otherwise, false.

Przykłady

Poniższy przykład pobiera dwa wystąpienia tego samego kodowania (po jednym przez stronę kodową i inne według nazwy) i sprawdza ich równość.The following example gets two instances of the same encoding (one by codepage and another by name), and checks their equality.

using namespace System;
using namespace System::Text;
int main()
{
   
   // Get a UTF-32 encoding by codepage.
   Encoding^ e1 = Encoding::GetEncoding( 12000 );
   
   // Get a UTF-32 encoding by name.
   Encoding^ e2 = Encoding::GetEncoding( "utf-32" );
   
   // Check their equality.
   Console::WriteLine( "e1 equals e2? {0}", e1->Equals( e2 ) );
}

/* 
This code produces the following output.

e1 equals e2? True

*/
using System;
using System.Text;

public class SamplesEncoding  {

   public static void Main()  {

      // Get a UTF-32 encoding by codepage.
      Encoding e1 = Encoding.GetEncoding( 12000 );

      // Get a UTF-32 encoding by name.
      Encoding e2 = Encoding.GetEncoding( "utf-32" );

      // Check their equality.
      Console.WriteLine( "e1 equals e2? {0}", e1.Equals( e2 ) );
   }
}


/* 
This code produces the following output.

e1 equals e2? True

*/
Imports System.Text

Public Class SamplesEncoding   

   Public Shared Sub Main()

      ' Get a UTF-32 encoding by codepage.
      Dim e1 As Encoding = Encoding.GetEncoding(12000)

      ' Get a UTF-32 encoding by name.
      Dim e2 As Encoding = Encoding.GetEncoding("utf-32")

      ' Check their equality.
      Console.WriteLine("e1 equals e2? {0}", e1.Equals(e2))

   End Sub

End Class


'This code produces the following output.
'
'e1 equals e2? True

Uwagi

Dwa wystąpienia Encoding są uważane za równe, jeśli są zgodne z tą samą stroną kodową, a ich EncoderFallback DecoderFallback obiekty i są równe.Two instances of Encoding are considered equal if they correspond to the same code page and their EncoderFallback and DecoderFallback objects are equal. W szczególności wszystkie pochodne strony kodowe mają stronę kodową 0, a ich powrotu są zwykle null ( Nothing w Visual Basic .NET).In particular, derived code pages all have a code page of 0 and their fallbacks are normally null (Nothing in Visual Basic .NET). Dlatego wszystkie są uważane za równorzędne.Thus they are all considered equal to one another. Jedną z postanowień jest to, że gdy Equals jest używany do wypełniania tabeli skrótów, wszystkie pochodne kodowania porównują się równo i mieszczą się w tym samym gnieździe tabeli skrótów.One consequence is that when Equals is used to populate a hash table, all derived encodings compare equal and fall into the same hash table slot.

Dotyczy

Zobacz też