Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Возможно, концепция перечислимых типов Вам уже знакома. Поэтому, ограничимся классическим, в этом случае, примером. Допустим, программа должна определять количество отработанных часов по правилу: понедельник, вторник, среда, четверг – 8 часов, пятница – 7, суббота и воскресенье – 0.
Для представления дня недели опишем перечислимый тип
enum WeekDay = {San, Mon, Tue, Wed, Thu, Fri, Sat};
Теперь функция, определяющая количество отработанных часов может выглядеть следующим образом:
static int WorkOurs (WeekDay wd)
{
switch(wd)
{
case WeekDay.San: case WeekDay.Sat: return 0;
case WeekDay.Mon: case WeekDay.Tue:
case WeekDay.Wed: case WeekDay.Thu: return 8;
case WeekDay.Fri: return 7;
}
}
В последнем примере использования метода Split второй параметр является параметром стандартного перечислимого типа StringSplitOptions, определенного в.NET, а RemoveEmptyEntries – одним из значений этого типа.
Метод IndexOf()
Этот метод возвращает позицию первого вхождения строки, в строке, вызывающей этот метод. Если подстроки в строке нет, метод возвращает -1.
String s=”Hello, Helen!”;
Console.WriteLine(s.IndexOf(“He”); //выводит 0
Console.WriteLine(s.IndexOf(“he”); //выводит -1
Чтобы найти последующие (после первого) вхождения, можно применить перегруженную версию IndexOf, второй параметр которого указывает позицию, с которой нужно начинать поиск строки в подстроке. С помощью этого метода следующий фрагмент выводит все вхождения подстроки.
int k=0;
while (k!=-1)
{
k= s.IndexOf(“He”,k);
Console.WriteLine(k); //выводит 0
k++;
}
Метод Format
Синтаксис и действие этого метода похожи на метод Console.WriteLine. Отличие в том, что WriteLine выводит сформированную строку на экран, а Format возвращает эту строку для дальнейшего использования в программе.
Метод Format является статическим и вызывается от имени класса:
String s=String.Format(“{0}x{1}={2} и {2}={1}x{0}”,2,3,2*3);
В результате сформирована строка “2x3=6 и 6=3*2”
Метод ToCharArray
Набор методов класса String не может быть идеальным средством для решения всех задач обработки текстов. Существует немало даже простых задач, которые «неудобно» решать этими методами. В этом случае остается последнее средство – решать задачу, рассматривая строку как массив символов. Однако, как уже было сказано ранее, индексированный доступ к символам строки возможен только для чтения. Именно в этом случае Вам понадобится метод ToCharArray, который «разбирает» целостный объект-строку на массив символов. В следующем примере решается простая задача инвертирования символов строки:
String s=”телефон”;
char ch;
char chAr=s.ToCharArray();
for(int i=0; i<char.Length/2; i++)
{ ch=chAr[i]; char[i]=chAr[char.Length-i-1]; chAr[char.Length-i-1]=ch; }
s=new String(char);
Пример демонстрирует, что метод ToCharArray возвращает массив символов. Последняя строка показывает, как можно создать объект-строку из массива символов.
Объектно-ориентированное программирование
Эволюция от структур к классам
Используем структуры
Напомним, как использовать традиционные уже в языке Си структурные типы и их переменные – структуры.
01 struct Person
02 { public string Name;
03 public double Height;
04 public double Weight;
05 }
06 class Program
07 { static void Main(string[] args)
08 { Person me, you;
09 me.Name="Это я"; me.Height=190.0; me.Weight=85;
10 you.Name="Это ты"; you.Height=140.0; you.Weight=85;
11 PersonAnalyze(me.Height,me.Weight,me.Name);
12 PersonAnalyze(you.Height,you.Weight,you.Name);
13 }
14 static void PersonAnalyze(double h,double w,string n)
15 { if (h - w > 100.0) Console.WriteLine(n + " худой");
16 else Console.WriteLine(n + " полный");
17 }
18 }
В определении структурного типа Person (стр.01-05) новым является только использование слова public в описании переменных. Его роль мы выясним позже.
Класс Program условно можно назвать главным классом, поскольку он содержит метод Main, с которого и начнется выполнение программы.
В методе Main описываются две структуры (переменные структурного типа). В отличие от языка Си, в описании структур ключевое слово struct не указывается. Таким образом, переменные me и you являются переменными типа Person.
Далее с помощью операции доступа к полю (операции точка) и операторов присваивания происходит заполнение переменных me и you информационным содержимым (стр.09-10).
Наконец, в стр. 11 и 12 вызывается метод PersonAnalyze класса Program сначала с данными структуры me, а затем с данными структуры you. Заметим, что метод PersonAnalyze, как и метод Main описан как static. На экране должен появиться следующий результат:
Это я полный
Это ты худой
|
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!