Урок 26. Строки (класс System.String)

Автор: admin | 14 Июнь 2008 – 16:11 -


Урок 26. Строки (класс System.String)

Строки в C# – это экземпляры класса System.String. Вообще говоря в C# есть тип string, но класс System.String яляется более продвинутым, так что его использование часто оказывается более оправданным и простым. Этот класс имеет множество методов и свойств, некоторые из которых перечислены ниже:

Свойство Length. Возвращает длину строки. Пример использования:

            String s="qqq";
            int k=s.Length; //В k запишется 3

Compare. Статический метод, сравнивающий две строки. Возвращает 0, есть строки равны, отрицательное значение, если первая строка меньше второй и положительное значение, если первая строки больше второй (больше и меньше в алфавитном смысле, разумеется). Пример использования:

namespace test
{
    class Test
    {

        public static void Main()
        {
            String s1="arbour", s2="ace", s3="azote";
            System.Console.WriteLine(String.Compare(s1, s1)); //Выдаст 0, т. к. "arbour" равно "arbour".
            System.Console.WriteLine(String.Compare(s1, s2)); //Выдаст -1, т. к. "arbour" меньше "ace".
            System.Console.WriteLine(String.Compare(s1, s3)); //Выдаст 1, т. к. "arbour" больше "azote".
        }
    }
}

Equals. Метод, возвращает true, если строки равны, false – если не равны. Может быть как статическим, так и не статическим. Пример использования:

            String s1="qqq", s2="www";
            System.Console.WriteLine(String.Equals(s1, s2).ToString());
            //Статический метод
            System.Console.WriteLine(System.Console.WriteLine(String.Equals(s1, s2).ToString());
            //Не статический метод
            System.Console.WriteLine(s1.Equals(s2).ToString());.ToString());

Метод Substring. Поволяет извлечь из строки подстроку. Пример использования:

            String s1="abcdefg", s2;
            s2=s1.Substring(3, 2);
            System.Console.WriteLine(s2); //Напечатается "de"

Параметры тут такие: первый – с какого места извлекаем (нумерация с нуля) и второй – сколько символов извлекаем.

Метод Insert. Вставляет в строку другую строку. Пример использования:

            String s1="abcdefg", s2;
            s2=s1.Insert(1, "xyz");
            System.Console.WriteLine(s2); //Напечатается "axyzbcdefg"

Первый параметр тут – это куда вставляем (нумерация, как всегда, с нуля), второй – что за строчку вставляем.

Метод IndexOf. Позволяет найти в строке подстроку. Пример использования:

            String s1="abcabcab", s2="bc", s3="zzz";
            System.Console.WriteLine(s1.IndexOf(s2)); //Напечатается 1
            System.Console.WriteLine(s1.IndexOf(s3)); //Напечатается -1

Этот метод возвращает номер позиции, на котором в строке находится передаваемая в качестве параметра подстрока. Если такой построки нет, то возвращается -1.

Метод Replace. Производит замену в строке. Пример использования:

            String s1="abcabcab", s2="bc", s3;
            s3=s1.Replace(s2, "q");
            System.Console.WriteLine(s3); //Напечатается aqaqab

Методы EndWith и StartsWith. Проверяют, не завершается ли или не начинается ли строка с или на заданную строку соответственно. Пример использования:

            String s1="arbour";
            if(s1.StartsWith("ar"))
                System.Console.WriteLine("Строка начинается на \"ar\"");
            else
                System.Console.WriteLine("Строка не начинается на \"ar\"");

Методы ToUpper и ToLower переводят строку в верхний или нижний регистр соответственно. Пример использования:

            String s1="aRbRur";
            s1=s1.ToLower();

Методы Trim, TrimEnds и TrimStart. Удаляют пробельные символы из начала и конца строки (Trim), только с конца строки (TrimEnds) и только с начала строки (TrimStart). Пример использваония:

            String s1="  ar  brur ";
            System.Console.Write(s1.Trim());

Заметьте, что при изменении строки фактически старый экземпляр класса System.String уничтожается, и создается новый с там же именем и измененным содержанием. Это означает, что при интенсивной работе со строками программа может работеть не так быстро, как хотелось бы. Если мы не хотим, что бы каждый раз создавался новый экземпляр класса, то вместо класса System.String надо использовать класс StringBuilder, котрый мы рассмотрим на следующем уроке.


Tags: , , , , , , , , , , ,
Находится в Уроки C# | No Comments »

Ответить

Вы должны быть в системе, дабы комментировать.


C# — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio. Интернет магазин - насосы красноярск. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к С++ и Java. Язык имеет строгую статическую типизацию, поддерживает полиморфизм, перегрузку операторов, указатели на функции-члены классов, атрибуты, события, свойства, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков С++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).