Таблица 21.8. Поля, поддерживаемые структурой Decimal Поле Назначение public static readonly decimal MaxValue Наибольшее значение, допустимое для данных типа decimal public static readonly decimal MinusOne Представление числа -1 в виде значения типа decimal public static readonly decimal MinValue Наименьшее значение, допустимое для данных типа decimal public static readonly decimal One Представление числа 1 в виде значения типа decimal public static readonly decimal Zero Представление числа 0 в виде значения типа decimal Структура Char
Структура Char соответствует типу char и применяется довольно часто, посколь ку предоставляет немало методов, позволяющих обрабатывать символы и распреде лять их по отдельным категориям. Например, символ строчной буквы можно преоб разовать в символ прописной буквы, вызвав метод ToUpper, а с помощью метода IsDigit можно определить, обозначает ли символ цифру.
Методы, определенные в структуре Char, приведены в табл. 21.9. Следует, од нако, иметь в виду, что некоторые методы, например ConvertFromUtf32 и ConvertToUtf32, позволяют обрабатывать символы уникода в форматах UTF-16 и UTF-32. Раньше все символы уникода могли быть представлены 16 разрядами, что соответствует величине значения типа char. Но несколько лет назад набор символов уникода был расширен, для чего потребовалось более 16 разрядов. Каждый символ уникода представлен кодовой точкой, а способ кодирования кодовой точки зависит от используемого формата преобразования уникода (UTF). Так, в формате UTF-16 для кодирования большинства кодовых точек требуется одно 16-разрядное значение, а для кодирования остальных кодовых точек — два 16-разрядных значения. Если для этой цели требуются два 16-разрядных значения, то для их представления служат два зна чения типа char. Первое символьное значение называется старшим суррогатом, а вто рое — младшим суррогатом. В формате UTF-32 каждая кодовая точка кодируется с по мощью одного 32-разрядного значения. В структуре Char предоставляются все необхо димые средства для преобразования из формата UTF-16 в формат UTF-32 и обратно.
В отношении методов структуры Char необходимо также отметить следующее: в используемых по умолчанию формах методов ToUpper и ToLower применя ются текущие настройки культурной среды (языки и региональные стандарты), чтобы указать способ представления символов верхнего и нижнего регистра. На момент на писания этой книги рекомендовалось явно указывать текущие настройки культурной среды, используя для этой цели параметр типа CultureInfo во второй форме обоих упоминаемых методов. Класс CultureInfo относится к пространству имен System. Globalization, а для указания текущей культурной среды следует передать свойство CultureInfo.CurrentCulture соответствующему методу.
В структуре Char определены также следующие поля. public const char MaxValue public const char MinValue
Кроме того, в структуре Char реализуются следующие интерфейсы: IComparable,
IComparable