String.CompareOrdinal String.CompareOrdinal String.CompareOrdinal String.CompareOrdinal Method

Definición

Compara dos objetos String mediante la evaluación de los valores numéricos de los objetos Char correspondientes de cada cadena.Compares two String objects by evaluating the numeric values of the corresponding Char objects in each string.

Sobrecargas

CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32)

Compara las subcadenas de dos objetos String especificados mediante la evaluación de los valores numéricos de los correspondientes objetos Char en cada subcadena.Compares substrings of two specified String objects by evaluating the numeric values of the corresponding Char objects in each substring.

CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String)

Compara dos objetos String especificados mediante la evaluación de los valores numéricos de los objetos Char correspondientes de cada cadena.Compares two specified String objects by evaluating the numeric values of the corresponding Char objects in each string.

CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32) CompareOrdinal(String, Int32, String, Int32, Int32)

Compara las subcadenas de dos objetos String especificados mediante la evaluación de los valores numéricos de los correspondientes objetos Char en cada subcadena.Compares substrings of two specified String objects by evaluating the numeric values of the corresponding Char objects in each substring.

public:
 static int CompareOrdinal(System::String ^ strA, int indexA, System::String ^ strB, int indexB, int length);
public static int CompareOrdinal (string strA, int indexA, string strB, int indexB, int length);
static member CompareOrdinal : string * int * string * int * int -> int
Public Shared Function CompareOrdinal (strA As String, indexA As Integer, strB As String, indexB As Integer, length As Integer) As Integer

Parámetros

strA
String String String String

Primera cadena que se va a usar en la comparación.The first string to use in the comparison.

indexA
Int32 Int32 Int32 Int32

Índice inicial de la subcadena de strA.The starting index of the substring in strA.

strB
String String String String

Segunda cadena que se va a usar en la comparación.The second string to use in the comparison.

indexB
Int32 Int32 Int32 Int32

Índice inicial de la subcadena de strB.The starting index of the substring in strB.

length
Int32 Int32 Int32 Int32

Número máximo de caracteres de las subcadenas que se van a comparar.The maximum number of characters in the substrings to compare.

Devoluciones

Entero de 32 bits con signo que indica la relación léxica que existe entre los dos términos de una comparación.A 32-bit signed integer that indicates the lexical relationship between the two comparands.

ValorValue CondiciónCondition
Menor que ceroLess than zero La subcadena de strA es menor que la subcadena de strB.The substring in strA is less than the substring in strB.
CeroZero Las subcadenas son iguales o length es cero.The substrings are equal, or length is zero.
Mayor que ceroGreater than zero La subcadena de strA es mayor que la subcadena de strB.The substring in strA is greater than the substring in strB.

Excepciones

strA no es null y indexA es mayor que strALength.strA is not null and indexA is greater than strA.Length.

o bien-or- strB no es null y indexB es mayor que strB.Length.strB is not null and indexB is greater than strB.Length.

O bien-or- indexA, indexB o length es negativo.indexA, indexB, or length is negative.

Ejemplos

En el ejemplo siguiente se CompareOrdinal muestra Compare que y usan distintos criterios de ordenación.This following example demonstrates that CompareOrdinal and Compare use different sort orders.

using namespace System;
using namespace System::Globalization;
int main()
{
   String^ strLow = "abc";
   String^ strCap = "ABC";
   String^ result = "equal to ";
   int x = 0;
   int pos = 1;
   
   // The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
   x = String::CompareOrdinal( strLow, pos, strCap, pos, 1 );
   if ( x < 0 )
      result = "less than";

   if ( x > 0 )
      result = "greater than";

   Console::WriteLine( "CompareOrdinal(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos );
   Console::WriteLine( "   '{0}' is {1} '{2}'", strLow[ pos ], result, strCap[ pos ] );

   // In U.S. English culture, 'b' is linguistically less than 'B'.
   x = String::Compare( strLow, pos, strCap, pos, 1, false, gcnew CultureInfo( "en-US" ) );
   if ( x < 0 )
      result = "less than";
   else
   if ( x > 0 )
      result = "greater than";

   Console::WriteLine( "Compare(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos );
   Console::WriteLine( "   '{0}' is {1} '{2}'", strLow[ pos ], result, strCap[ pos ] );
}
using System;
using System.Globalization;

class Test 
{
	public static void Main(String[] args) 
	{
	String strLow = "abc";
	String strCap = "ABC";
	String result = "equal to ";
	int x = 0;
	int pos = 1;

// The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
	x = String.CompareOrdinal(strLow, pos, strCap, pos, 1);
	if (x < 0) result = "less than";
	if (x > 0) result = "greater than";
	Console.WriteLine("CompareOrdinal(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
	Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);

// In U.S. English culture, 'b' is linguistically less than 'B'.
	x = String.Compare(strLow, pos, strCap, pos, 1, false, new CultureInfo("en-US"));
	if (x < 0) result = "less than";
	else if (x > 0) result = "greater than";
	Console.WriteLine("Compare(\"{0}\"[{2}], \"{1}\"[{2}]):", strLow, strCap, pos);
	Console.WriteLine("   '{0}' is {1} '{2}'", strLow[pos], result, strCap[pos]);
	}
}
Imports System.Globalization

Class Test
   
  Public Shared Sub Main(args() As [String])
      Dim strLow As [String] = "abc"
      Dim strCap As [String] = "ABC"
      Dim result As [String] = "equal to "
      Dim x As Integer = 0
      Dim pos As Integer = 1

' The Unicode codepoint for 'b' is greater than the codepoint for 'B'.      
      x = [String].CompareOrdinal(strLow, pos, strCap, pos, 1)
      If x < 0 Then
         result = "less than"
      End If
      If x > 0 Then
         result = "greater than"
      End If

' In U.S. English culture, 'b' is linguistically less than 'B'.
      Console.WriteLine("CompareOrdinal(""{0}"".Chars({2}), ""{1}"".Chars({2})):", strLow, strCap, pos)
      
      Console.WriteLine("   '{0}' is {1} '{2}'", strLow.Chars(pos), result, strCap.Chars(pos))
      
      x = [String].Compare(strLow, pos, strCap, pos, 1, False, New CultureInfo("en-US"))
      If x < 0 Then
         result = "less than"
      ElseIf x > 0 Then
         result = "greater than"
      End If
      Console.WriteLine("Compare(""{0}"".Chars({2}), ""{1}"".Chars({2})):", strLow, strCap, pos)
      Console.WriteLine("   '{0}' is {1} '{2}'", strLow.Chars(pos), result, strCap.Chars(pos))
   End Sub
End Class 'Test

Comentarios

Los indexAparámetros indexB, ylength no deben ser negativos.The indexA, indexB, and length parameters must be nonnegative.

El número de caracteres comparados es el menor de la strA longitud indexAmenor que la strB indexBlongitud de menos, lengthy.The number of characters compared is the lesser of the length of strA less indexA, the length of strB less indexB, and length.

Este método realiza una comparación que distingue entre mayúsculas y minúsculas usando las reglas de ordenación ordinal.This method performs a case-sensitive comparison using ordinal sort rules. Para obtener más información acerca de la ordenación por palabra, cadena System.Globalization.CompareOptionsy ordinal, vea.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Para realizar una comparación sin distinción entre mayúsculas y minúsculas usando las reglas Compare(String, Int32, String, Int32, Int32, StringComparison) de ordenación comparisonType ordinal, llame StringComparison.OrdinalIgnoreCaseal método con el argumento establecido en.To perform a case-insensitive comparison using ordinal sort rules, call the Compare(String, Int32, String, Int32, Int32, StringComparison) method with the comparisonType argument set to StringComparison.OrdinalIgnoreCase.

Dado CompareOrdinal(String, String) que es un método estático strA , strB y puede nullser.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Si ambos valores son null, el método devuelve 0 (cero), lo que indica strA que strB y son iguales.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Si solo uno de los valores es null, el método considera que el valor no NULL es mayor.If only one of the values is null, the method considers the non-null value to be greater.

Consulte también:

CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String) CompareOrdinal(String, String)

Compara dos objetos String especificados mediante la evaluación de los valores numéricos de los objetos Char correspondientes de cada cadena.Compares two specified String objects by evaluating the numeric values of the corresponding Char objects in each string.

public:
 static int CompareOrdinal(System::String ^ strA, System::String ^ strB);
public static int CompareOrdinal (string strA, string strB);
static member CompareOrdinal : string * string -> int
Public Shared Function CompareOrdinal (strA As String, strB As String) As Integer

Parámetros

strA
String String String String

Primera cadena que se va a comparar.The first string to compare.

strB
String String String String

Segunda cadena que se va a comparar.The second string to compare.

Devoluciones

Entero que indica la relación léxica que existe entre los dos términos de una comparación.An integer that indicates the lexical relationship between the two comparands.

ValorValue CondiciónCondition
Menor que ceroLess than zero strA es menor que strB.strA is less than strB.
CeroZero strA y strB son iguales.strA and strB are equal.
Mayor que ceroGreater than zero strA es mayor que strB.strA is greater than strB.

Ejemplos

En el ejemplo siguiente se realiza una comparación ordinal de dos cadenas que solo difieren en mayúsculas y minúsculas.The following example performs and ordinal comparison of two strings that only differ in case.

// Sample for String::CompareOrdinal(String, String)
using namespace System;
int main()
{
   String^ str1 = "ABCD";
   String^ str2 = "abcd";
   String^ str;
   int result;
   Console::WriteLine();
   Console::WriteLine( "Compare the numeric values of the corresponding Char objects in each string." );
   Console::WriteLine( "str1 = '{0}', str2 = '{1}'", str1, str2 );
   result = String::CompareOrdinal( str1, str2 );
   str = ((result < 0) ? "less than" : ((result > 0) ? (String^)"greater than" : "equal to"));
   Console::Write( "String '{0}' is ", str1 );
   Console::Write( "{0} ", str );
   Console::WriteLine( "String '{0}'.", str2 );
}

/*
This example produces the following results:

Compare the numeric values of the corresponding Char objects in each string.
str1 = 'ABCD', str2 = 'abcd'
String 'ABCD' is less than String 'abcd'.
*/
// Sample for String.CompareOrdinal(String, String)
using System;

class Sample {
    public static void Main() {
    String str1 = "ABCD";
    String str2 = "abcd";
    String str;
    int result;

    Console.WriteLine();
    Console.WriteLine("Compare the numeric values of the corresponding Char objects in each string.");
    Console.WriteLine("str1 = '{0}', str2 = '{1}'", str1, str2);
    result = String.CompareOrdinal(str1, str2);
    str = ((result < 0) ? "less than" : ((result > 0) ? "greater than" : "equal to"));
    Console.Write("String '{0}' is ", str1);
    Console.Write("{0} ", str);
    Console.WriteLine("String '{0}'.", str2);
    }
}
/*
This example produces the following results:

Compare the numeric values of the corresponding Char objects in each string.
str1 = 'ABCD', str2 = 'abcd'
String 'ABCD' is less than String 'abcd'.
*/
' Sample for String.CompareOrdinal(String, String)
Class Sample
   Public Shared Sub Main()
      Dim str1 As [String] = "ABCD"
      Dim str2 As [String] = "abcd"
      Dim str As [String]
      Dim result As Integer
      
      Console.WriteLine()
      Console.WriteLine("Compare the numeric values of the corresponding Char objects in each string.")
      Console.WriteLine("str1 = '{0}', str2 = '{1}'", str1, str2)
      result = [String].CompareOrdinal(str1, str2)
      str = IIf(result < 0, "less than", IIf(result > 0, "greater than", "equal to"))
      Console.Write("String '{0}' is ", str1)
      Console.Write("{0} ", str)
      Console.WriteLine("String '{0}'.", str2)
   End Sub
End Class 'Sample
'
'This example produces the following results:
'
'Compare the numeric values of the corresponding Char objects in each string.
'str1 = 'ABCD', str2 = 'abcd'
'String 'ABCD' is less than String 'abcd'.
'

Comentarios

Este método realiza una comparación que distingue entre mayúsculas y minúsculas usando las reglas de ordenación ordinal.This method performs a case-sensitive comparison using ordinal sort rules. Para obtener más información acerca de la ordenación por palabra, cadena System.Globalization.CompareOptionsy ordinal, vea.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Para realizar una comparación sin distinción entre mayúsculas y minúsculas usando las reglas Compare(String, String, StringComparison) de ordenación comparisonType ordinal, llame StringComparison.OrdinalIgnoreCaseal método con el argumento establecido en.To perform a case-insensitive comparison using ordinal sort rules, call the Compare(String, String, StringComparison) method with the comparisonType argument set to StringComparison.OrdinalIgnoreCase.

Dado CompareOrdinal(String, String) que es un método estático strA , strB y puede nullser.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Si ambos valores son null, el método devuelve 0 (cero), lo que indica strA que strB y son iguales.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Si solo uno de los valores es null, el método considera que el valor no NULL es mayor.If only one of the values is null, the method considers the non-null value to be greater.

Consulte también:

Se aplica a