ВУЗ:
Составители:
Рубрика:
112
public void TestChar()
{
char ch1 = 'A', ch2 = '\x5A', ch3 = '\u0058';
char ch = new Char();
int code;
string s;
ch = ch1;
//преобразование символьного типа в тип int
code = ch;
ch1 = (char) (code + 1);
//преобразование символьного типа в строку
//s = ch;
s = ch1.ToString() + ch2.ToString() + ch3.ToString();
Console.WriteLine("s= {0}, ch= {1}, code = {2}", s, ch, code);
} //TestChar
Три символьные переменные инициализированы константами, значения
которых заданы тремя разными способами. Переменная ch объявляется в
объектном стиле, используя new и вызов конструктора класса. Тип char, как и
все типы C#, является классом. Этот класс наследует свойства и методы класса
Object и имеет большое число собственных методов.
Явные или неявные преобразования между классами char и string
отсутствуют, но, благодаря методу ToString, переменные типа char стандартным
образом преобразуются в тип string. Как отмечалось выше, существуют
неявные преобразования типа char в целочисленные типы, начиная с типа
ushort. Обратные преобразования целочисленных типов в тип char также
существуют, но они уже явные.
В результате работы процедуры TestChar строка s, полученная
сцеплением трех символов, преобразованных в строки, имеет значение BZX,
переменная ch равна A, а ее код – переменная code – 65.
Не раз отмечалось, что семантика присваивания справедлива при вызове
методов и замене формальных аргументов на фактические. Приведем две
процедуры, выполняющие взаимно-обратные операции – получение по коду
символа и получение символа по его коду:
public int SayCode(char sym)
{
return sym;
}//SayCode
public char SaySym(object code)
{
return (char)((int)code);
}// SaySym
Страницы
- « первая
- ‹ предыдущая
- …
- 106
- 107
- 108
- 109
- 110
- …
- следующая ›
- последняя »
