русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Сортировка и поиск в массивах


Дата добавления: 2013-12-23; просмотров: 858; Нарушение авторских прав


Форматирование строк

Манипуляции со строками

Здесь расскажем о паре полезных методов, позволяющих вставить одну строку в другую, удалить диапазон символов, а также заменить какой-либо символ или строку на другую строку.

string Insert(int iIndex, string strInsert);

string Remove(int iIndex, int iCount);

string Replace(char chOld, char chNew);

string Replace(string strOld, string strNew);

 

Разбиение строк на массив в C# выполняет вызов метода Split:

string[] Split(params char[] achSeparators);

string[] Split(params char[] achSeparators, int IReturnCount);

Если первый параметр метода равен null, то в качестве разделительных символов будут использованы пробельные символы.

первым аргументом методов Console.Writeили ConsoleWriteLineможет быть строка, описывающая форматирование остальных аргументов.

Console.WriteLine("s1={0}, s2={1}", s1,s2);

string Format{string strFormat, params object[] aobj);

Например, такой вызов метода Format:

string str = String.Format("The sum of {0} and {1} is {2}", 2, 3, 2 + 3); //возвращает строку "The sum of 2 and 3 is 5»,

Метод Format, как и большинство методов, является перегруженным и может вызываться с разным числом параметров. Метод Format в качестве результата возвращает переданную ему строку, где все спецификации формата заменены строками, полученными в результате форматирования объектов.

Общий синтаксис, специфицирующий формат, таков:

 

{N [,M [:<коды_форматирования>]]}

 

Обязательный параметр N задает индекс объекта, заменяющего формат. Можно считать, что методу всегда передается массив объектов, даже если фактически передан один объект. Индексация объектов начинается с нуля, как это принято в массивах.

Второй параметр M, если он задан, определяет минимальную ширину поля, которое отводится строке, вставляемой вместо формата.



Третий необязательный параметр задает коды форматирования, указывающие, как следует форматировать объект.

Все становится ясным, когда появляются соответствующие примеры. Вот они:

 

public void TestFormat() {

//метод Format

int x=77;

string s= string.Format("x={0}",x);

Console.WriteLine(s + "\tx={0}",x);

s= string.Format("Итого:{0,10} рублей",x);

Console.WriteLine(s);

s= string.Format("Итого:{0,6:######} рублей",x);

Console.WriteLine(s);

s= string.Format("Итого:{0:P} ",0.77);

Console.WriteLine(s);

s= string.Format("Итого:{0,4:C} ",77.77);

Console.WriteLine(s);

}

 

 

void Sort(Array агг);

void Sort(Array агг, int iStartlndex, int iCount);

Например, массив определен так:

string[] astr = { "New Jersey", "New York", "new Mexico", "New Hampshire" };

Обратите внимание на строчную букву «’n’» в третьей строке. После вызова:

Array.Sort(astr);

Элементы массива будут расположены и таком порядке: «New Hampshire». «NewJersey», «new Mexico», «New York». Поскольку метод Sort вызывает метод СотраrеТо класса Siring, сортировка нечувствительна к регистру. Однако, если б одним из элементов массива являлась строка «New Mexico» (заглавная «N»), строка «New Mexico» после сортировки была бы расположена за строкой «new Mexico»,

 

Например, для выполнения чувствительной к регистру сортировки строкового массива astr следует вызвать:

Array. Sort(astr);

 

int BinarySearch(Array агг, object obj);

int BinarySearch(Array агг, int iStartlndex, int iCount, object obj);

Для двоичного поиска массив должен быть предварительно отсортирован. Допустим, отсортированный массив из четырех строчек (названий штатов Америки) содержит элементы:

"New Hampshire", "New Jersey", "new Mexico", "New York"

Вызов:

Array.BinarySearch(astr, "New York");

возвращает З, поскольку строка совпадает с astr[3]. Вызов:

Агray.BinarySearch(astr, "New Mexico");

возвращает -4. Отрицательное значение указывает, что строка не содержится в массиве. (Напоминаю, сортировка по умолчанию чувствительна к регистру!) Дополнение к возвращаемому значению равно 3, т. с. astr[3] является следующим наибольшим элементом массива,

Вызов:

Array.BinarySearch(astr, "new Mexico"));

возвращает 2. так как аргумент совпадает с astr[2]. Вызов:



<== предыдущая лекция | следующая лекция ==>
Отсечение и заполнение | Методы Join и Split


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.