¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

StringComparer (Clase)

Representa una operación de comparación de cadenas que utiliza reglas específicas basadas en la referencia cultural y el uso de mayúsculas y minúsculas o reglas específicas de comparación de ordinales.

System.Object
  System.StringComparer

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class StringComparer : IComparer, 
	IEqualityComparer, IComparer<string>, IEqualityComparer<string>

El tipo StringComparer expone los siguientes miembros.

  NombreDescripción
Método protegidoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsStringComparerInicializa una nueva instancia de la clase StringComparer.
Arriba

  NombreDescripción
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsCurrentCultureObtiene un objeto StringComparer que realiza una comparación de cadenas con distinción entre mayúsculas y minúsculas utilizando las reglas de comparación de palabras de la referencia cultural actual.
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsCurrentCultureIgnoreCaseObtiene un objeto StringComparer que realiza comparaciones de cadenas sin distinción entre mayúsculas y minúsculas utilizando las reglas de comparación de palabras de la referencia cultural actual.
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkInvariantCultureObtiene un objeto StringComparer que realiza una comparación de cadenas con distinción entre mayúsculas y minúsculas utilizando las reglas de comparación de palabras de la referencia cultural de todos los idiomas.
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkInvariantCultureIgnoreCaseObtiene un objeto StringComparer que realiza una comparación de cadenas sin distinción entre mayúsculas y minúsculas utilizando las reglas de comparación de palabras de la referencia cultural de todos los idiomas.
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsOrdinalObtiene un objeto StringComparer que realiza una comparación de cadenas ordinales donde se hace distinción entre mayúsculas y minúsculas.
Propiedad públicaMiembro estáticoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsOrdinalIgnoreCaseObtiene un objeto StringComparer que realiza una comparación de cadenas ordinales donde no se hace distinción entre mayúsculas y minúsculas.
Arriba

  NombreDescripción
Método públicoCompatible con XNA FrameworkCompare(Object, Object)Cuando se reemplaza en una clase derivada, compara dos objetos y devuelve una indicación de su criterio de ordenación relativo.
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsCompare(String, String)Cuando se reemplaza en una clase derivada, compara dos cadenas y devuelve una indicación de su criterio de ordenación relativo.
Método públicoMiembro estáticoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCreateCrea un objeto StringComparer que compara las cadenas según las reglas de una referencia cultural especificada.
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkEquals(Object, Object)Cuando se reemplaza en una clase derivada, indica si dos objetos son iguales.
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsEquals(String, String)Cuando se reemplaza en una clase derivada, indica si dos cadenas son iguales.
Método protegidoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetHashCode() Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkGetHashCode(Object)Cuando se reemplaza en una clase derivada, obtiene el código hash del objeto especificado.
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetHashCode(String)Cuando se reemplaza en una clase derivada, obtiene el código hash de la cadena especificada.
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método protegidoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIComparer.CompareCompara dos objetos y devuelve un valor que indica si uno de ellos es menor, igual o mayor que el otro.
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIEqualityComparer.EqualsDetermina si los objetos especificados son iguales.
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIEqualityComparer.GetHashCodeDevuelve un código hash para el objeto especificado.
Arriba

Un objeto derivado de la clase StringComparer incorpora operaciones de comparación, igualdad y código hash basadas en cadenas, en las que se tienen en cuenta tanto las reglas de comparación de uso de mayúsculas y minúsculas, como las específicas de la referencia cultural. Puede utilizar la clase StringComparer para crear una comparación específica del tipo para ordenar los elementos de una colección genérica. Las clases como Hashtable, Dictionary<TKey, TValue>, SortedList y SortedList<TKey, TValue> utilizan la clase StringComparer para la ordenación.

Una operación de comparación representada por la clase StringComparer se define para que distinga entre mayúsculas y minúsculas o no y para que utilice reglas de comparación de palabras (específicas de la referencia cultural) o reglas de comparación de ordinales (que no tienen en cuenta la referencia cultural). Para obtener más información sobre las reglas de comparación de palabras y ordinales, vea System.Globalization.CompareOptions.

Propiedades implementadas

Es posible que no sepa muy bien cómo utilizar las propiedades de la clase StringComparer debido a lo que parece una contradicción. La clase StringComparer se declara abstract (MustInherit en Visual Basic), lo que significa que sus miembros sólo se pueden invocar en un objeto de una clase derivada de la clase StringComparer. La contradicción reside en que cada propiedad de la clase StringComparer se declara static (Shared en Visual Basic), lo que significa que la propiedad se puede invocar sin crear antes una clase derivada.

Puede llamar a una propiedad StringComparer directamente, porque cada propiedad devuelve en realidad una instancia de una clase anónima que deriva de la clase StringComparer. Por consiguiente, el tipo de cada valor de propiedad es StringComparer, que es la clase base de la clase anónima, no el tipo de la propia clase anónima. Cada propiedad de la clase StringComparer devuelve un objeto StringComparer que admite reglas predefinidas de comparación y de uso de mayúsculas y minúsculas.

En el ejemplo de código siguiente se muestran las propiedades y el método Create de la clase StringComparer. El ejemplo muestra cómo diferentes objetos StringComparer ordenan tres versiones de la letra I del alfabeto latino.


// This example demonstrates members of the 
// System.StringComparer class.

using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using System.Threading;

class Sample 
{
    public static void Main() 
    {
// Create a list of string.
    List<string> list = new List<string>();

// Get the tr-TR (Turkish-Turkey) culture.
    CultureInfo turkish = new CultureInfo("tr-TR");

// Get the culture that is associated with the current thread.
    CultureInfo thisCulture = Thread.CurrentThread.CurrentCulture;

// Get the standard StringComparers.
    StringComparer invCmp =   StringComparer.InvariantCulture;
    StringComparer invICCmp = StringComparer.InvariantCultureIgnoreCase;
    StringComparer currCmp = StringComparer.CurrentCulture;
    StringComparer currICCmp = StringComparer.CurrentCultureIgnoreCase;
    StringComparer ordCmp = StringComparer.Ordinal;
    StringComparer ordICCmp = StringComparer.OrdinalIgnoreCase;

// Create a StringComparer that uses the Turkish culture and ignores case.
    StringComparer turkICComp = StringComparer.Create(turkish, true);

// Define three strings consisting of different versions of the letter I.
// LATIN CAPITAL LETTER I (U+0049)
    string capitalLetterI = "I";  

// LATIN SMALL LETTER I (U+0069)
    string smallLetterI   = "i";

// LATIN SMALL LETTER DOTLESS I (U+0131)
    string smallLetterDotlessI = "\u0131";

// Add the three strings to the list.
    list.Add(capitalLetterI);
    list.Add(smallLetterI);
    list.Add(smallLetterDotlessI);

// Display the original list order.
    Display(list, "The original order of the list entries...");

// Sort the list using the invariant culture.
    list.Sort(invCmp);
    Display(list, "Invariant culture...");
    list.Sort(invICCmp);
    Display(list, "Invariant culture, ignore case...");

// Sort the list using the current culture.
    Console.WriteLine("The current culture is \"{0}\".", thisCulture.Name);
    list.Sort(currCmp);
    Display(list, "Current culture...");
    list.Sort(currICCmp);
    Display(list, "Current culture, ignore case...");

// Sort the list using the ordinal value of the character code points.
    list.Sort(ordCmp);
    Display(list, "Ordinal...");
    list.Sort(ordICCmp);
    Display(list, "Ordinal, ignore case...");

// Sort the list using the Turkish culture, which treats LATIN SMALL LETTER 
// DOTLESS I differently than LATIN SMALL LETTER I.
    list.Sort(turkICComp);
    Display(list, "Turkish culture, ignore case...");
    }

    public static void Display(List<string> lst, string title)
    {
    Char c;
    int  codePoint;
    Console.WriteLine(title);
    foreach (string s in lst)
        {
        c = s[0];
        codePoint = Convert.ToInt32(c);
        Console.WriteLine("0x{0:x}", codePoint); 
        }
    Console.WriteLine();
    }
}
/*
This code example produces the following results:

The original order of the list entries...
0x49
0x69
0x131

Invariant culture...
0x69
0x49
0x131

Invariant culture, ignore case...
0x49
0x69
0x131

The current culture is "en-US".
Current culture...
0x69
0x49
0x131

Current culture, ignore case...
0x49
0x69
0x131

Ordinal...
0x49
0x69
0x131

Ordinal, ignore case...
0x69
0x49
0x131

Turkish culture, ignore case...
0x131
0x49
0x69

*/


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Biblioteca de clases portable

Compatible con: Biblioteca de clases portable

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft