Герберт Шилдт - C# 4.0 полное руководство - 2011
- Название:C# 4.0 полное руководство - 2011
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Герберт Шилдт - C# 4.0 полное руководство - 2011 краткое содержание
C# 4.0 полное руководство - 2011 - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
string result = String.Concat("значение равно " + 19);
метод Int32.ToString() вызывается для получения строкового представления целого значения 19, а затем метод Concat () сцепляет строки и возвращает результат.
Обратите также внимание на применение объекта определяемого пользователем класса MyClass в следующем вызове метода Concat ().
result = String.Concat(me, " текущий счет равен ",
MyClass.Count);
В данном случае возвращается строковое представление объекта типа MyClass, сцепленное с указываемой строкой. По умолчанию это просто имя класса. Но если переопределить метод ToString () , то вместо строки с именем класса MyClass может быть возвращена другая строка. В качестве упражнения попробуйте ввести в приведенный выше пример программы следующий фрагмент кода.
public override string ToString() {
return "Объект типа MyClass";
}
В этом случае последняя строка результата выполнения программы будет выглядеть так, как показано ниже.
Результат: Объект типа MyClass текущий счет равен 1
В версию 4.0 среды .NET Framework добавлены еще две формы метода Concat (), приведенные ниже.
public static string Concat(IEnumerable values) public static string Concat(IEnumerable values)
В первой форме этого метода возвращается символьная строка, состоящая из сцепленных строковых представлений ряда значений, имеющихся в объекте, который обозначается параметром values и может быть объектом любого типа, реализующего интерфейс IEnumerable. А во второй форме данного метода сцепляются строки, обозначаемые параметром values. (Следует, однако, иметь в виду, что если приходится выполнять большой объем операций сцепления символьных строк, то для этой цели лучше воспользоваться средствами класса StringBuilder.)
Поиск в строке
В классе String предоставляется немало методов для поиска в строке. С их помощью можно, например, искать в строке отдельный символ, строку, первое или последнее вхождение того и другого в строке. Следует, однако, иметь в виду, что поиск может осуществляться либо с учетом культурной среды либо порядковым способом.
Для обнаружения первого вхождения символа или подстроки в исходной строке служит метод IndexOf () . Для него определено несколько перегружаемых форм. Ниже приведена одна из форм для поиска первого вхождения символа в исходной строке.
public int IndexOf(char value)
В этой форме метода IndexOf () возвращается первое вхождение символа value в вызывающей строке. Если символ value в ней не найден, jo возвращается значение -1. При таком поиске символа настройки культурной среды игнорируются. Следовательно, в данном случае осуществляется порядковый поиск первого вхождения символа. .
Ниже приведены еще две формы метода IndexOf () , позволяющие искать первое вхождение одной строки в другой.
public int IndexOf(String value)
public int IndexOf(String value, StringComparison comparisonType)
В первой форме рассматриваемого здесь метода поиск первого вхождения строки, обозначаемой параметром value, осуществляется с учетом культурной среды. А во второй форме предоставляется возможность указать значение типа StringComparison, обозначающее способ поиска. В если искомая строка не найдена, то в обеих формах данного метода возвращается значение -1 .
Для обнаружения последнего вхождения символа или строки в исходной строке служит метод Last IndexOf (). И для этого метода определено несколько перегружаемых форм. Ниже приведена одна из форм для поиска последнего вхождения символа в вызывающей строке.
public int LastlndexOf(char value)
В этой форме метода LastlndexOf () осуществляется порядковый поиск, а в итоге возвращается последнее вхождение символа value в вызывающей строке или же значение -1 , если искомый символ не найден.
Ниже приведены еще две формы метода LastlndexOf () , позволяющие искать последнее вхождение одной строки в другой.
public int LastlndexOf(string value)
public int LastlndexOf(string value, StringComparison comparisonType)
В первой форме рассматриваемого здесь метода поиск последнего вхождения строки, обозначаемой параметром value , осуществляется с учетом культурной среды. А во второй форме предоставляется возможность указать значение типа StringComparison, обозначающее способ поиска. Если же искомая строка не найдена, то в обеих формах данного метода возвращается значение -1.
В классе String предоставляются еще два интересных метода поиска в строке: IndexOf Any ( ) и LastlndexOf Any () . Оба метода обнаруживают первый символ, совпадающий с любым набором символов. Ниже приведены простейшие формы этих методов.
public int IndexOfAny(char[] anyOf) public int LastlndexOfAny(char[] anyOf)
Метод IndexOf Any () возвращает индекс первого вхождения любого символа из массива anyOf, обнаруженного в вызывающей строке, а метод LastlndexOfAny () — индекс последнего вхождения любого символа из массива anyOf, обнаруженного в вызывающей строке. Если совпадение символов не обнаружено, то в обоих случаях возвращается значение -1. Кроме того, в обоих рассматриваемых здесь методах осуществляется порядковый поиск.
При обработке символьных строк нередко оказывается полезно знать, начинается ли строка заданной подстрокой или же оканчивается ею. Для этой цели служат методы StartsWith ( ) и EndsWith () . Ниже приведены их простейшие формы.
public bool StartsWith(string value) public bool EndsWith(string value)
Метод StartsWith () возвращает логическое значение true, если вызывающая строка начинается с подстроки, переданной ему в качестве аргумента value . А метод EndsWith () возвращает логическое значение true, если вызывающая строка оканчивается подстрокой, переданной ему в качестве аргумента value. В противном случае оба метода возвращают логическое значение false.
Интервал:
Закладка: