KnigaRead.com/
KnigaRead.com » Разная литература » Прочее » Герберт Шилдт - C# 4.0 полное руководство - 2011

Герберт Шилдт - C# 4.0 полное руководство - 2011

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн "Герберт Шилдт - C# 4.0 полное руководство - 2011". Жанр: Прочее издательство неизвестно, год неизвестен.
Перейти на страницу:

если он обозначает строчную букву. В противном случае значение символа с не изменяется

public static

char

Возвращает прописной эквивалент символа с,

ToUpper(char i

c, Culturelnfo

если он обозначает строчную букву. В противном

culture)

случае значение символа с не изменяется. Преобразование выполняется в соответствии о информацией о культурной среде, указываемой в параметре culture, где Culturelnfo — это класс, определенный в пространстве имен System. Globalization

Окончание табл. 21.9

Метод

Назначение

public static char ■ ToUpperlnvariant(char c) public' static bool TryParse(string s, out char result)

Возвращает прописной эквивалент символа с независимо от настроек культурной среды Предпринимает попытку преобразовать символ из строки s в его эквивалентное значение типа char. При успешной попытке это значение сохраняется в параметре result и возвращается логическое значение true. Если же строка s состоит из нескольких символов, то возвращается логическое значение false, в отличие от метода Parse (), который генерирует исключение при неудачном исходе преобразования

Ниже приведен пример программы, в которой демонстрируется применение нескольких методов, определенных в структуре Char.

// Продемонстрировать применение нескольких методов,

// определенных в структуре Char.

using System;

using System.Globalization;

class CharDemo {

static void Main() {

string str = "Это простой тест. $23"; int i;

for(i=0; i < str.Length; i++) {

Console.Write(str[i] + " является"); if(Char.IsDigit(str[i]))

Console.Write(" цифрой"); if(Char.IsLetter(str[i]))

Console.Write(" буквой"); if(Char.IsLower(str [i]))

Console.Write(" строчной"); if(Char.IsUpper(str[i]))

Console.Write(" прописной"); if(Char.IsSymbol(str[i]))

Console.Write(" символическим знаком"); if(Char.IsSeparator (str[i]))

Console.Write(" разделительным"); if(Char.IsWhiteSpace (str [i]))

Console.Write(" пробелом"); if(Char.IsPunctuation(str [i]))

Console.Write(" знаком препинания");

Console.WriteLine("Исходная строка: " + str);

// Преобразовать в прописные буквы.

string newstr = "";

for(i=0; i < str.Length; i++)

newstr += Char.ToUpper (str[i], Culturelnfo.CurrentCulture);

Console.WriteLine("После преобразования: " + newstr);

}

}

Эта программа дает следующий результат.

Э является буквой прописной т является буквой строчной о является буквой строчной

является разделительным пробелом п является буквой строчной р является буквой строчной

о является буквой строчной с является буквой строчной т является буквой строчной

о является буквой строчной й является буквой строчной

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

является разделительным пробелом $ является символическим знаком

2    является цифрой

3    является цифрой

Исходная строка: Это простой тест. $23 После преобразования: ЭТО ПРОСТОЙ ТЕСТ. $23

Структура Boolean

В структуре Boolean поддерживаются данные типа bool. Методы, определенные в этой структуре, перечислены в табл. 21.10. Кроме того, в ней определены следующие поля.

public static readonly string FalseString public static readonly string TrueString

В этих полях логические значения true и false содержатся в удобочитаемой форме. Так, если вывести содержимое поля FalseString с помощью-метода WriteLine (), то на экране появится строка "False".

В структуре Boolean реализованы следующие интерфейсы: I Comp а г able, IComparable<bool>, IConvertible иIEquatable<bool>.

Метод

Назначение

public int CompareTo(bool

Сравнивает логическое значение вызывающего объек

value).

та со значением параметра value. Возвращает нуль, если сравниваемые значения равны; отрицательное значение, если вызывающий объект имеет логическое значение false, а параметр value логическое значение true; и, наконец, положительное значение, если вызывающий объект имеет логическое значение true, а параметр value —логическое значение false

public int

Сравнивает логическое значение вызывающего объек

CompareTo(object obj)

та со значением параметра obj. Возвращает нуль, если сравниваемые значения равны; отрицательное значение, если вызывающий объект имеет логическое значение false, а параметр obj — логическое значение true; и, наконец, положительное значение, если вызывающий объект имеет логическое значение true, а параметр obj — логическое значение false

public bool Equals(bool obj)

Возвращает логическое значение true, если значение вызывающего объекта равно значению параметра obj

public override bool

Возвращает логическое значение true, если значение

Equals(object obj)

вызывающего объекта равно значению параметра obj

public override int

Возвращает хеш-код для вызывающего объекта

GetHashCode()

public TypeCode

Возвращает значение перечисления TypeCode для

GetTypeCode()

структуры Boolean, т.е. TypeCode . Boolean

public static bool

Возвращает эквивалент типа bool символьной стро

Parse(string s)

ки s. Если строка s не содержит ни поле Boolean. TrueString, ни поле Boolean. FalseString, то генерируется исключение FormatException, независимо оттого, какими буквами набрано содержимое строки: прописными или строчными

public override string

Возвращает строковое, представление значения вызы

ToString()

вающего объекта, которое должно быть либо значением поля TrueString, либо значением поля FalseString

public string

Возвращает строковое представление значения вызы

ToString(IFormatProvider

вающего объекта, которое должно быть либо значением

provider)

поля TrueString, либо значением поля FalseString. При этом параметр provider игнорируется

public static bool

Предпринимает попытку преобразовать символ из стро

TryParse(string s, out

ки s в его эквивалентное значение типа bool. При

bool result)

успешной попытке это значение сохраняется в параметре result и возвращается логическое значение true. Если же строка s не содержит ни поле Boolean. TrueString, ни поле Boolean. FalseString, то возвращается логическое значение false, независимо от того, какими буквами набрано содержимое строки: прописными или строчными, в отличие от метода Parse (), который генеоиоует исключение в аналогичной ситуации

Класс Array

Класс Array относится к числу наиболее часто используемых в пространстве имен System. Он является базовым классом для всех массивов в С#. Следовательно, его методы можно применять к массивам любого встроенного в C# типа или же к массивам определяемого пользователем типа. Свойства, определенные в классе Array, перечислены в табл. 21.11, а методы — в табл. 21.12.

В классе Array реализуются следующие интерфейсы: ICloneable, ICollection, IEnumerable, IStructuralComparable, IStructuralEquatable, а такжеIList. Все интерфейсы, кроме ICloneable, определены в пространстве имен System. Collections, подробнее рассматриваемом в главе 25.

В ряде методов данного класса используется параметр типа I Comparer или IComparer<T>. Интерфейс IComparer находится в пространстве имен System. Collections. В нем определяется метод Compare () для сравнения значений двух объектов, как показано ниже.

int Compare(object х, object у)

Этот метод возвращает значение больше нуля, если х больше у; значение меньше нуля, если х меньше у; и, наконец, нулевое значение, если оба значения равны.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*