隐式转换
//底取值范围转到高取值范围
int i = 3;
float j = i;//隐式转换
强制转换

遇到上面问题时就需要强制转换:
float i = 5;
int j = (int)i;//强制转换
Convert转换
float i = 3;
int j = Convert.ToInt32(i);
强制转换 和 Convert转换 的区别:
1.强制转换转换失败得到一个没有意义的数字,Convert转换失败会抛出异常。
2.强转直接丢弃小数点,Convet会四舍五入。
Parse转换
字符串转数值类型,例子:
//字符串转int类型
int i = int.Parse("123");
int.Parse()和 int.TryParse()的区别:
- int.Parse() 转换失败会抛出异常,而 int.TryParse() 不会。
- int.TryParse()返回的是bool(true或者false)。如果转换失败,输出的值为0;
bool i = int.TryParse("123",out int a);
Console.WriteLine($"i={i},a={a}");//转换成功
bool j = int.TryParse("abc", out int b);
Console.WriteLine($"i={j},a={b}");//转换失败

任意类型转字符串
变量名.ToString()
int i = 3;
i.ToString();
文章详细介绍了C#中数据类型转换的几种方式,包括隐式转换、强制转换、使用Convert类转换、Parse方法以及TryParse方法。在转换过程中,提到了转换失败时的不同处理方式,如强制转换可能得到无效结果,而Convert和Parse会抛出异常或返回布尔值。此外,还介绍了将任何类型转换为字符串的方法,即调用ToString()方法。
1168

被折叠的 条评论
为什么被折叠?



