String.CompareOrdinal Yöntem

Tanım

Her dizedeki ilgili String nesnelerin sayısal değerlerini değerlendirerek iki Char nesneyi karşılaştırır.

Aşırı Yüklemeler

Name Description
CompareOrdinal(String, String)

Her dizedeki ilgili String nesnelerin sayısal değerlerini değerlendirerek belirtilen Char iki nesneyi karşılaştırır.

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

Her alt dizedeki ilgili String nesnelerin sayısal değerlerini değerlendirerek belirtilen Char iki nesnenin alt dizelerini karşılaştırır.

CompareOrdinal(String, String)

Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs

Her dizedeki ilgili String nesnelerin sayısal değerlerini değerlendirerek belirtilen Char iki nesneyi karşılaştırır.

public:
 static int CompareOrdinal(System::String ^ strA, System::String ^ strB);
public static int CompareOrdinal(string strA, 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

Parametreler

strA
String

Karşılaştırılacak ilk dize.

strB
String

Karşılaştırılacak ikinci dize.

Döndürülenler

İki karşılaştırma ve arasındaki sözcük temelli ilişkiyi gösteren bir tamsayı.

Değer Koşul
Sıfırdan küçük strA değerinden strBküçüktür.
Sıfır strA ve strB eşittir.
Sıfırdan büyük strA değerinden strBbüyüktür.

Örnekler

Aşağıdaki örnek, yalnızca büyük/küçük harfe göre farklılık gösteren iki dizenin sıralı karşılaştırmasını gerçekleştirir.

// 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)
open System

let str1 = "ABCD"
let str2 = "abcd"

printfn "\nCompare the numeric values of the corresponding Char objects in each string."
printfn $"str1 = '{str1}', str2 = '{str2}'"
let result = String.CompareOrdinal(str1, str2)
let str = if result < 0 then "less than" elif result > 0 then "greater than" else "equal to"
printf $"String '{str1}' is "
printf $"{str} "
printfn $"String '{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
'
'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'.
'

Açıklamalar

Bu yöntem sıralı sıralama kurallarını kullanarak büyük/küçük harfe duyarlı bir karşılaştırma gerçekleştirir. Sözcük, dize ve sıralı sıralamalar hakkında daha fazla bilgi için bkz System.Globalization.CompareOptions. . Sıralı sıralama kurallarını kullanarak büyük/küçük harfe duyarlı olmayan bir karşılaştırma gerçekleştirmek için, bağımsız değişkeni olarak ayarlanmış Compare(String, String, StringComparison)yöntemini comparisonType çağırınStringComparison.OrdinalIgnoreCase.

Çünkü CompareOrdinal(String, String) statik bir yöntemdir strA ve strB olabilir null. Her iki değer nullde ise, yöntemi 0 (sıfır) döndürür; bu da ve strA değerlerinin eşit olduğunu strB gösterir. Değerlerden yalnızca biri ise null, yöntemi null olmayan değeri daha büyük olarak kabul eder.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs
Kaynak:
String.Comparison.cs

Her alt dizedeki ilgili String nesnelerin sayısal değerlerini değerlendirerek belirtilen Char iki nesnenin alt dizelerini karşılaştırır.

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);
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

Parametreler

strA
String

Karşılaştırmada kullanılacak ilk dize.

indexA
Int32

içindeki strAalt dizenin başlangıç dizini.

strB
String

Karşılaştırmada kullanılacak ikinci dize.

indexB
Int32

içindeki strBalt dizenin başlangıç dizini.

length
Int32

Alt dizelerdeki karşılaştırılması gereken karakter sayısı üst sınırı.

Döndürülenler

İki karşılaştırma ve arasındaki sözcüksel ilişkiyi gösteren 32 bit işaretli tamsayı.

Değer Koşul
Sıfırdan küçük içindeki strA alt dize, içindeki strBalt dizeden küçüktür.
Sıfır Alt dizeler eşittir veya length sıfırdır.
Sıfırdan büyük içindeki strA alt dize içindeki alt dizeden strBbüyüktür.

Özel durumlar

strAdeğildir null ve indexA değerinden büyüktürstrA.Length

-veya-

strBdeğildir null ve indexB değerinden büyüktürstrB.Length

-veya-

indexA, indexBveya length negatiftir.

Örnekler

Aşağıdaki örnekte bunu CompareOrdinalCompare ve farklı sıralama düzenlerini kullanma gösterilmektedir.

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]);
    }
}
open System
open System.Globalization

[<EntryPoint>]
let main _ =
    let strLow = "abc"
    let strCap = "ABC"
    let result = "equal to "
    let pos = 1

    // The Unicode codepoint for 'b' is greater than the codepoint for 'B'.
    let x = String.CompareOrdinal(strLow, pos, strCap, pos, 1)
    let result =
        if x < 0 then "less than"
        elif x > 0 then "greater than"
        else "equal to"
    printfn $"CompareOrdinal(\"{strLow}\"[{pos}], \"{strCap}\"[{pos}]):"
    printfn $"   '{strLow[pos]}' is {result} '{strCap[pos]}'"

    // In U.S. English culture, 'b' is linguistically less than 'B'.
    let x = String.Compare(strLow, pos, strCap, pos, 1, false, new CultureInfo("en-US"))
    let result =
        if x < 0 then "less than"
        elif x > 0 then "greater than"
        else "equal to"
    printfn $"Compare(\"{strLow}\"[{pos}], \"{strCap}\"[{pos}]):"
    printfn $"   '{strLow[pos]}' is {result} '{strCap[pos]}'"
    0
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

Açıklamalar

indexA, indexBve length parametreleri gereksiz olmalıdır.

Karşılaştırılan karakter sayısı, daha az , daha az ve uzunluğu strAindexAstrBindexBkadar küçüktür.length

Bu yöntem sıralı sıralama kurallarını kullanarak büyük/küçük harfe duyarlı bir karşılaştırma gerçekleştirir. Sözcük, dize ve sıralı sıralamalar hakkında daha fazla bilgi için bkz System.Globalization.CompareOptions. . Sıralı sıralama kurallarını kullanarak büyük/küçük harfe duyarlı olmayan bir karşılaştırma gerçekleştirmek için, bağımsız değişkeni olarak ayarlanmış Compare(String, Int32, String, Int32, Int32, StringComparison)yöntemini comparisonType çağırınStringComparison.OrdinalIgnoreCase.

Çünkü CompareOrdinal(String, String) statik bir yöntemdir strA ve strB olabilir null. Her iki değer nullde ise, yöntemi 0 (sıfır) döndürür; bu da ve strA değerlerinin eşit olduğunu strB gösterir. Değerlerden yalnızca biri ise null, yöntemi null olmayan değeri daha büyük olarak kabul eder.

Ayrıca bkz.

Şunlara uygulanır