Sdílet prostřednictvím


System.StringComparer – třída

Tento článek obsahuje doplňující poznámky k referenční dokumentaci pro toto rozhraní API.

Objekt odvozený z StringComparer třídy ztělesňuje operace porovnávání, rovnosti a hash řetězce, které berou v úvahu srovnávací pravidla specifická pro případ i jazykovou verzi. Třídu můžete použít StringComparer k vytvoření porovnání specifického typu k seřazení prvků v obecné kolekci. Třídy, jako Hashtableje , Dictionary<TKey,TValue>a SortedListSortedList<TKey,TValue> používají StringComparer třídu pro účely řazení.

Operace porovnání, která je reprezentována StringComparer třídou, je definována tak, aby nerozlišovala malá a velká písmena, a používá buď slovo (rozlišující jazykovou verzi), nebo řadová pravidla porovnání (nerozlišující jazykovou verzi). Další informace o pravidlech porovnání slov a řad naleznete v tématu System.Globalization.CompareOptions.

Poznámka:

Můžete si stáhnout výchozí tabulku prvků kolace Unicode, nejnovější verzi tabulky hmotnosti řazení. Konkrétní verze tabulky hmotnosti řazení závisí na verzi knihoven International Components for Unicode nainstalovaných v systému. Informace o verzích ICU a verzích Unicode, které implementují, najdete v tématu Stažení ICU.

Pro rozhraní .NET Framework ve Windows si můžete stáhnout tabulky hmotnosti řazení, sadu textových souborů, které obsahují informace o váhách znaků použitých při operacích řazení a porovnání.

Implementované vlastnosti

Možná si nejste jisti, jak používat StringComparer vlastnosti třídy z důvodu zdánlivého rozporu. Třída StringComparer je deklarována abstract (MustInherit v jazyce Visual Basic), což znamená, že jeho členy lze vyvolat pouze u objektu třídy odvozené z StringComparer třídy. Rozpor je, že každá vlastnost StringComparer třídy je deklarována static (Shared v jazyce Visual Basic), což znamená, že vlastnost lze vyvolat bez prvního vytvoření odvozené třídy.

Vlastnost lze volat StringComparer přímo, protože každá vlastnost ve skutečnosti vrací instanci anonymní třídy odvozené z StringComparer třídy. V důsledku toho typ každé hodnoty vlastnosti je StringComparer, což je základní třída anonymní třídy, nikoli typ anonymní třídy samotné. Každá StringComparer vlastnost třídy vrátí StringComparer objekt, který podporuje předdefinovaná velká a porovnávací pravidla.