Приведение и преобразование - PullRequest
2 голосов
/ 30 августа 2009

В чем разница между Cast & Convert в C # 2008?

Ответы [ 3 ]

3 голосов
/ 30 августа 2009

Cast позволит вам безопасно конвертировать определенные типы данных, например. double-> int

double a = 3.5;
int b = (int) a; //fraction will be truncated

Здесь приведение берет двоичное представление 3.5 и помещает его в целочисленное представление. Поскольку целое число не имеет дробей, оно отбрасывается и также допускается. Преобразование строки в целое число таким способом не так просто и не разрешено компилятором.

Конвертировать умнее и конвертировать больше типов данных из одного в другой, например. строка -> логическое значение

string myString = "true";
bool myBool = Convert.ToBoolean(myString);

Также см. Обсуждение стека переполнения по этой теме.

0 голосов
/ 30 августа 2009

Одно отличие заключается в том, что методы Convert допускают определенное форматирование (т. Е. IFormatProvider)

0 голосов
/ 30 августа 2009

Приведение, как правило, медленнее и может выполнять косвенные и явные операторы выпрямления

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