Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5fan_ru_Уровни языков программирования. Язык C#...doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
352 Кб
Скачать
☆

Работа с консолью

Задание переменным начальных значений с помощью оператора присваивания – очень постой и полезный способ при разработке первых программ, поэтому он будет использоваться во многих примерах начальной части данного курса.

В реальной жизни (а также при выполнении лабораторных работ) часто необходимо, чтобы программа обрабатывала данные, которые пользователь вводит с консоли (то есть с клавиатуры) и выводить результаты обратно в консоль.

Данные выводятся на консоль при помощи метода WriteLine:

Console.WriteLine("Hello World!");

Console.WriteLine(x);

Console.WriteLine("x = {0}, у = {1}, z = {2}", x, y, z) ;

Здесь использован новый формат вызова метода WriteLine. Теперь этому методу передаются несколько параметров (в данном случае четыре), разделенных запятыми. Первый из них представляет собой строковый литерал, а остальные — числовые переменные, значения которых нас интересуют.

Метод WriteLine обладает большими возможностями, но мы будем изучать их постепенно по мере изложения материала. В данном случае мы передали методу в качестве первого параметра так называемую строку формата, определяющую, что и как нужно выводить на консоль. Остальные параметр представляет собой переменные, содержимое которой нужно вывести.

Во время работы программы метод WriteLine вначале выведет на консоль строку "x = ", а затем вместо конструкции "{0}" подставит значение второго параметра метода, т. е. содержимое переменной х. После этого строка форматирования просматривается дальше, значения "y = " и "z = " выводятся на экран без изменения, а вместо "{1}" и "{2}" подставляются значения следующих параметров метода, т. е. содержимое переменных y и z соответственно.

Данные считываются с консоли при помощи метода ReadLine

text = Console.ReadLine();

Этот метод может ввести с консоли любую информацию в виде строки символов, включая числовые данные (т.к. каждая цифра числа при вводе выступает как отдельный символ).

Преобразование типов

Проблема заключается не в том, чтобы ввести строку символов, содержащую число, а чтобы присвоить введенное значение числовой переменной. Для этого используется специальный класс, выполняющий преобразование данных из одно типа в другой (если, конечно, это вообще возможно) – класс Convert.

Строка символов, которая вводится после приглашения с помощью метода ReadLine, преобразуется в нужный нам тип данных с помощью метода ToInt32 класса Convert:

int a = Convert.ToInt32(Console.ReadLine());

Такая запись (помещение вызова метода ReadLine внутри круглых скобок метода ToInt32) означает, что первым выполнится метод ReadLine, а введенная им строка символов будет затем передана методу ToInt32 для преобразования в число. Число, полученное в результате преобразования, будет присвоено переменной а.

Использование класса Convert дает нам возможность вводить с консоли значения любых типов, так как в этом классе имеются функции преобразования ко всем числовым типам С# и к логическому типу:

Метод

Тип числовых данных

Метод

Тип числовых данных

ToBoolean

bool

ToUIntl6

ushort

ToChar

char

ToUInt32

uint

ToSbyte

sbyte

ToUInt64

ulong

ToByte

byte

ToSingle

float

ToIntl6

short

ToDouble

double

ToInt32

int

ToDecimal

decimal

ToInt64

long

Все эти методы прекрасно работают, пока вводимые с консоли данные можно преобразовать к необходимому типу. Если же это не так, метод завершится с ошибкой и произойдет преждевременное завершение работы программы – иными словами, возникнет исключительная ситуация, препятствующая ее нормальному продолжению.

Ситуация с вводом некорректных данных, к сожалению, не является редкой, поэтому отдельный раздел этого курса посвящен методам корректной обработки таких ситуаций. Этот материал изучается позже, поэтому пока постарайтесь правильно вводить исходные данные.