Сравнения12
4. Результаты вычислений (содержимое файла “rez2.txt”) Выражение имеет значение R=-36,5242370695631
Строки. Средства работы со строками Строка в C# — это массив знаков, объявленный с помощью ключевого слова string. Строковый литерал объявляется с помощью кавычек, как показано в следующем примере. string s = "Hello, World!";Переприсваивание Строки можно целиком переприсваивать: string s1 = "Hello";string s2 = s1; //переприсваиваемОбъединение строк Можно объединять строки с помощью оператора +, как показано в следующем примере: string s1 = "orange";string s2 = "red";s1 += s2;Console.WriteLine(s1); // напечатается "orangered"Escape-знаки Строки могут содержать escape-знаки, такие как "\n" (новая строка) и "\t" (табуляция). Пример: string hello = "Hello\nWorld!";Console.WriteLine(hello);/* НапечатаетсяHelloWorld!*/string s = "чтобы вставить \"кавычки\" в строку используем обратный слэш";Console.WriteLine(s);Если требуется добавить в строку обратную косую черту, перед ней нужно поставить еще одну обратную косую черту. Следующая строка: string filePath = "\\\\My Documents\\";Console.WriteLine(filePath);/* Напечатается:\\My Documents\*/Точные строки: символ @ Символ @ служит для того, чтобы конструктор строк пропускал escape-знаки и переносы строки. Следующие две строки являются идентичными: string p1 = "\\\\My Documents\\My Files\\";string p2 = @"\\My Documents\My Files\";Чтобы поставить в точной строке знак двойных кавычек, нужно использовать по два таких знака, как показано в следующем примере: string s = @"You say ""goodbye"" and I say ""hello""";Доступ к отдельным знакам Квадратные скобки [] служат для доступа к отдельным знакам в объекте string, но при этом возможен доступ только для чтения: string str = "test";char x = str[2]; // x = 's'; string s5 = "Printing backwards";for (int i = 0; i < s5.Length; i++) Console.Write(s5[s5.Length - i - 1]); // напечатается "sdrawkcab gnitnirP"Извлечение подстрок Для извлечения подстроки из строки используется метод Substring. string s3 = "Visual C# Express";string s4 = s3.Substring(7, 2);Console.WriteLine(s4);// напечатается "C#"Замена по образцу Для замены подстроки в строке по образцу используется метод Replace. string s3 = "Visual C# Express";string s5 = s3.Replace("C#", "Basic");Сonsole.WriteLine(s5);// напечатается "Visual Basic Express"Смена регистра Чтобы изменить регистр букв в строке (сделать их заглавными или строчными) следует использовать ToUpper() или ToLower(), как показано в следующем примере: string s6 = "АлтГТУ";Console.WriteLine(s6.ToUpper());// Напечатается АЛТГТУConsole.WriteLine(s6.ToLower());// Напечатается алтгтуConsole.WriteLine(s6);// Напечатается АлтГТУСравнения Самый простой способ сравнения двух строк — использовать операторы == и!=, осуществляющие сравнение с учетом регистра: string color1 = "red";string color2 = "green";string color3 = "red"; if (color1 == color3) Console.WriteLine("Строки равны");if (color1!= color2) Console.WriteLine("Строки не равны");Не допускается использование >,<,>=,<= для сравнения строк. Для строковых объектов существует метод CompareTo(), возвращающий целочисленное значение, зависящее от того, что одна строка может быть меньше (<), равна (==) или больше другой (>). При сравнении строк используется значение Юникода, при этом значение строчных букв меньше, чем значение заглавных. Дополнительные сведения о правилах сравнения строк см. в разделах CompareTo(). string string1 = "ИИТ";string string2 = "Иит"; int result = string1.CompareTo(string2);if (result > 0) Console.WriteLine("{0} больше чем {1}", string1, string2); else if (result == 0) Console.WriteLine("{0} равно {1}", string1, string2); else if (result < 0) Console.WriteLine("{0} меньше чем {1}", string1, string2); // Напечатается ИИТ больше чем Иит12
|