Страница 375 из 502
<b> string str3 = "Beta";</b>
<b> string str4 = "alpha";</b>
<b> string str5 = "alpha, beta";</b>
<b> int result;</b>
<b> // Сначала продемонстрировать отличия между сравнением строк</b>
<b> // с учетом культурной среды и порядковым сравнением.</b>
<b> result = String.Compare(str1, str2, StringComparison.CurrentCulture);</b>
<b> Console.Write("Сравнение строк с учетом культурной среды: ");</b>
<b> if (result < 0)</b>
<b> Console.WriteLine(str1 + " меньше " + str2);</b>
<b> else if (result > 0)</b>
<b> Console.WriteLine(str1 + " больше " + str2);</b>
<b> else</b>
<b> Console.WriteLine(str1 + " равно " + str2);</b>
<b> result = String.Compare(str1, str2, StringComparison.Ordinal);</b>
<b> Console.Write("Порядковое сравнение строк: ");</b>
<b> if (result < 0)</b>
<b> Console.WriteLine(str1 + " меньше " + str2);</b>
<b> else if (result > 0)</b>
<b> Console.WriteLine(str1 + " больше " + str2);</b>
<b> else</b>
<b> Console.WriteLine(str1 + " равно " + str4);</b>
<b> // Использовать метод CompareOrdinal().</b>
<b> result = String.CompareOrdinal(str1, str2);</b>
<b> Console.Write("Сравнение строк методом CompareOrdinal():n");</b>
<b> if (result < 0)</b>
<b> Console.WriteLine(str1 + " меньше " + str2);</b>
<b> else if (result > 0)</b>
<b> Console.WriteLine(str1 + " больше " + str2);</b>
<b> else</b>
<b> Console.WriteLine(str1 + " равно " + str4);</b>
<b> Console.WriteLine();</b>
<b> // Определить равенство строк с помощью оператора == .</b>
<b> // Это порядковое сравнение символьных строк,</b>
<b> if (str1 == str4)</b>
<b> Console.WriteLine(str1 + " == " + str4);</b>
<b> // Определить неравенство строк с помощью оператора !=.</b>
<b> if (str1 != str3)</b>
<b> Console.WriteLine(str1 + " != " + str3);</b>
<b> if (str1 != str2)</b>
<b> Console.WriteLine(str1 + " != " + str2);</b>
<b> Console.WriteLine();</b>
<b> // Выполнить порядковое сравнение строк без учета регистра,</b>
<b> // используя метод Equals().</b>
<b> if (String.Equals(str1, str2, StringComparison.OrdinalIgnoreCase))</b>
<b> Console.WriteLine("Сравнение строк методом Equals() с "</b>
<b> + "параметром OrdinallgnoreCase:n"</b>
<b> + str1 + " равно " + str2);</b>
<b> Console.WriteLine();</b>
<b> // Сравнить части строк,</b>
<b> if (String.Compare(str2, 0, str5, 0, 3,</b>
<b> StringComparison.CurrentCulture) > 0) {</b>
<b> Console.WriteLine("Сравнение строк с учетом текущей культурной среды:"</b>
<b> + "3 первых символа строки " + str2 +</b>
<b> " больше, чем 3 первых символа строки " + str5);</b>
<b> }</b>
<b> }</b>
<b>}</b>
Выполнение этой программы приводит к следующему результату.
<b>Сравнение строк с учетом культурной среды: alpha меньше Alpha</b>
<b>Порядковое сравнение строк: alpha больше Alpha</b>
<b>Сравнение строк методом CompareOrdinal(): alpha больше Alpha</b>
<b>alpha == alpha</b>
<b>alpha != Beta</b>
<b>alpha != Alpha</b>
<b>Сравнение строк методом Equals() с параметром OrdinallgnoreCase: alpha равно Alpha</b>
<b>Сравнение строк с учетом текущей культурной среды:</b>