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

Definizione

Confronta due oggetti String in base all'analisi dei valori numerici dei corrispondenti oggetti Char in ciascuna stringa.Compares two String objects by evaluating the numeric values of the corresponding Char objects in each string.

Overload

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

Confronta due oggetti String specificati in base all'analisi dei valori numerici dei corrispondenti oggetti Char in ogni stringa.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)

Effettua il confronto fra sottostringhe di due determinati oggetti String in base all'analisi dei valori numerici dei corrispondenti oggetti Char in ogni sottostringa.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)

Confronta due oggetti String specificati in base all'analisi dei valori numerici dei corrispondenti oggetti Char in ogni stringa.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

Parametri

strA
String String String String

Prima stringa da confrontare.The first string to compare.

strB
String String String String

Seconda stringa da confrontare.The second string to compare.

Restituisce

Intero che indica la relazione lessicale tra i due termini di confronto.An integer that indicates the lexical relationship between the two comparands.

ValueValue CondizioneCondition
Minore di zeroLess than zero strA è minore di strB.strA is less than strB.
ZeroZero strA e strB sono uguali.strA and strB are equal.
Maggiore di zeroGreater than zero strA è maggiore di strB.strA is greater than strB.

Esempi

Nell'esempio seguente viene eseguito e un confronto ordinale di due stringhe che differiscono solo nei case.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)
Imports System
Imports Microsoft.VisualBasic

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 'Main
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'.
'

Commenti

Questo metodo esegue un confronto tra maiuscole e minuscole usando le regole di ordinamento per ordinale.This method performs a case-sensitive comparison using ordinal sort rules. Per altre informazioni sui word, la stringa e gli ordinamenti ordinale, vedere System.Globalization.CompareOptions.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Per eseguire un confronto tra maiuscole e minuscole usando le regole di ordinamento per ordinale, chiamare il Compare(String, String, StringComparison) metodo con il comparisonType argomento impostato su StringComparison.OrdinalIgnoreCase.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.

In quanto CompareOrdinal(String, String) è un metodo statico strA e strB può essere null.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Se entrambi i valori sono null, il metodo restituisce 0 (zero), che indica che strA e strB sono uguali.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Se solo uno dei valori è null, il metodo prende in considerazione il valore non null a essere superiore.If only one of the values is null, the method considers the non-null value to be greater.

Vedi anche

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

Effettua il confronto fra sottostringhe di due determinati oggetti String in base all'analisi dei valori numerici dei corrispondenti oggetti Char in ogni sottostringa.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

Parametri

strA
String String String String

Prima stringa da usare nel confronto.The first string to use in the comparison.

indexA
Int32 Int32 Int32 Int32

Indice iniziale della sottostringa di strA.The starting index of the substring in strA.

strB
String String String String

Seconda stringa da usare nel confronto.The second string to use in the comparison.

indexB
Int32 Int32 Int32 Int32

Indice iniziale della sottostringa di strB.The starting index of the substring in strB.

length
Int32 Int32 Int32 Int32

Numero massimo di caratteri contenuti nelle sottostringhe da confrontare.The maximum number of characters in the substrings to compare.

Restituisce

Intero con segno a 32 bit che indica la relazione lessicale tra i due termini di confronto.A 32-bit signed integer that indicates the lexical relationship between the two comparands.

ValueValue CondizioneCondition
Minore di zeroLess than zero La lunghezza della sottostringa in strA è minore della lunghezza della sottostringa in strB.The substring in strA is less than the substring in strB.
ZeroZero La lunghezza delle sottostringhe è uguale, ovvero length è zero.The substrings are equal, or length is zero.
Maggiore di zeroGreater than zero La lunghezza della sottostringa in strA è maggiore della lunghezza della sottostringa in strB.The substring in strA is greater than the substring in strB.

Eccezioni

strA non è null e indexA è maggiore di strALength.strA is not null and indexA is greater than strA.Length.

In alternativa-or- strB non è null e indexB è maggiore di strBLength.strB is not null and indexB is greater than strB.Length.

In alternativa-or- indexA, indexB o length è negativo.indexA, indexB, or length is negative.

Esempi

Nell'esempio seguente viene dimostrato che CompareOrdinal e Compare usare diversi tipi di ordinamento.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
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 'Main
End Class 'Test

Commenti

Il indexA, indexB, e length i parametri devono essere non negativi.The indexA, indexB, and length parameters must be nonnegative.

Il numero di caratteri confrontato è il minore della lunghezza di strA minore indexA, la lunghezza di strB less indexB, e length.The number of characters compared is the lesser of the length of strA less indexA, the length of strB less indexB, and length.

Questo metodo esegue un confronto tra maiuscole e minuscole usando le regole di ordinamento per ordinale.This method performs a case-sensitive comparison using ordinal sort rules. Per altre informazioni sui word, la stringa e gli ordinamenti ordinale, vedere System.Globalization.CompareOptions.For more information about word, string, and ordinal sorts, see System.Globalization.CompareOptions. Per eseguire un confronto tra maiuscole e minuscole usando le regole di ordinamento per ordinale, chiamare il Compare(String, Int32, String, Int32, Int32, StringComparison) metodo con il comparisonType argomento impostato su StringComparison.OrdinalIgnoreCase.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.

In quanto CompareOrdinal(String, String) è un metodo statico strA e strB può essere null.Because CompareOrdinal(String, String) is a static method, strA and strB can be null. Se entrambi i valori sono null, il metodo restituisce 0 (zero), che indica che strA e strB sono uguali.If both values are null, the method returns 0 (zero), which indicates that strA and strB are equal. Se solo uno dei valori è null, il metodo prende in considerazione il valore non null a essere superiore.If only one of the values is null, the method considers the non-null value to be greater.

Vedi anche

Si applica a