Почему мне нужно конвертировать консольный ввод в определенный тип данных? - PullRequest
0 голосов
/ 14 марта 2009

Требуется дополнительная помощь по преобразованию в числа с двойным, целым и десятичным форматом при выполнении вычислений.

EX: ... Console.Write ("ВХОДЫ ВСЕГО ПРОДАЖ:");

... userInput = Console.ReadLine ();

... totalSales = Convert.ToDouble (userInput);

Я не совсем понимаю, почему мне нужно было преобразовать такое число в двойное, почему это не может быть просто Console.ReadLine ();

TY извините, если это так любитель. LOL

Ответы [ 2 ]

2 голосов
/ 14 марта 2009

Пользовательский ввод - это строка, а не двойное число (или любое число, как вы хотите, чтобы это было так). Итак, два разных типа данных здесь.

Если вы хотите по каким-либо причинам выполнить вычисления, такие как userInput + 5 или что-то еще, если userInput - это строка, она либо вывернется, либо выдаст неожиданные результаты в зависимости от компилятора / языка.

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

"2,33" + 5

Вы могли бы также делать это ...

"ЭЙ!" + 5

как только он преобразуется, хотя это больше похоже на это ...

2,33 + 5

Обратите внимание, больше нет кавычек, подразумевающих, что 2,33 теперь число, а не строка.

2 голосов
/ 14 марта 2009

LOL действительно.

Итак, причина, по которой вам нужно преобразовать в double, заключается в том, что Console.ReadLine считывает строку.

Я бы рекомендовал вам прочитать:

http://msdn.microsoft.com/en-us/library/cs7y5x0x.aspx, чтобы вы могли понять различные типы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...