КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Символи
Символьний тип char призначений для зберігання символів в кодуванні Unicode. Символьний тип відноситься до вбудованих типів даних С# і відповідає стандартному класу Char бібліотеки.NET з простору імен System. У цьому класі визначені статичні методи, які дозволяють задати вигляд і категорію символу, а також перетворити символ у верхній, нижній регістр, або в число. Основні методи приведені в таблиці 6.3.
Таблиця 6.3 Основні методи класу System.Char
У лістингу 6.9 продемонстровано використання цих методів.
Лістинг 6.9. Використання методів класу System.Char using System; namespace exam35 { class Classl { static void Main() { try { char a, b = 'B', c = '\x63', d = '\u0032'; // 1 Console.WriteLine(" {0} {1} {2}", b, c, d); Console.WriteLine(" {0} {1} {2}", char.ToLower(b), char.ToUpper(c), char.GetNumericValue(d)); do // 2 { Console.Write("Введіть символ: "); a = char.Parse(Console.ReadLine()); Console.WriteLine("Введений символ {0}, його код - {1} ", a, (int)a); if (char.IsLetter(a))Console.WriteLine("Буква"); if (char.IsUpper(a))Console.WriteLine("Верхній peг."); if (char.IsLower(a))Console.WriteLine("Нижній peг."); if (char.IsControl(a))Console.WriteLine("Керуючий"); if (char.IsNumber(a))Console.WriteLine("Число"); if (char.IsPunctuation(a)) Console.WriteLine("Роздільник"); } while (a!= 'q'); }
catch (Exception a) { Console.WriteLine(a.Message); Console.WriteLine("Виникло виключення"); return; } } } }
У операторові 1 описані три символьних змінних. Вони ініціалізувалися символьними літералами в різних формах представлення. Далі виконуються виведення і перетворення символів. У циклі 2 аналізується символ, що вводиться з клавіатури. Можна вводити і символи, що управляють, використовуючи поєднання клавіші Ctrl з латинськими буквами. При введенні використаний метод Parse, що перетворює рядок, який повинен містити єдиний символ, в символ типу char. Оскільки вводиться рядок, введення кожного символу слід завершувати натисненням клавіші Enter. Цикл виконується, поки користувач не введе символ q. Виведення символу супроводжується його кодом в десятковому вигляді. Для виведення коду використовується явне перетворення до цілого типу. Явне перетворення з символів в рядки і назад в С# не існує, неявним же чином будь-який об'єкт, у тому числі і символ, може бути перетворений в рядок, наприклад:
string s = 'к' + 'і' + 'т'; // результат - рядок "кіт"
При введенні і перетворенні можуть виникати виняткові ситуації, наприклад, якщо користувач введе порожній рядок. Для “м’якого” завершення програми передбачена обробка виключень.
6.8.2. Масиви символів
Масив символів, як і масив будь-якого іншого типу, побудований на основі базового класу Array, деякі властивості і методи якого були перераховані в таблиці 6.1. Застосування цих методів дозволяє ефективно вирішувати деякі завдання. Простий приклад приведений в лістингу 6.10.
Лістинг 6.10. Робота з масивом символів using System; namespace ConsoleApplicationi { class Classl { static void Main() { char[] a = { 'm', 'a', 's', 's', 'i', 'v' }; //1 char[] b = "Привіт я Ленін".ToCharArray(); //2 PrintArray("Початковий масив а:", a); int pos = Array.IndexOf(a, 'm'); a[pos] = 'M'; PrintArray("Змінений масив a:", a); PrintArray("Початковий масив b:", b); Array.Reverse(b); PrintArray("Змінений масив b:", b); } public static void PrintArray(string header, Array a) { Console.WriteLine(header); foreach (object x in a) Console.Write(x); Console.WriteLine("\n"); } } }
Результат роботи програми: Початковий масив а: massiv Змінений массив а: Massiv Початковий массив b: Привіт я Ленін Змінений масив b: нінеЛ я тівирП
Символьний масив можна ініціалізувати, або безпосередньо задаючи його елементи (оператор 1), або застосовуючи метод ToCharArray класу string, який розбиває початковий рядок на окремі символи (оператор 2).
Дата добавления: 2014-12-27; Просмотров: 500; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |