1.隐式转换
- 整型(包括int,short,long)和浮点型(包括float,double)可以混合运算
- 在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算
2.显示转换 - Convert
- 将一个基本数据类型转换为另一个 基本数据类型
- 将基本数据类型转换为int类型 String age=Console.ReadLine(); int a=Convert.ToInt32("age");
- 将字符串转换成 double 类型 double d=Convert.ToDouble("13.2");
3.显示转换 - Parse
- 在基本数据类型中我们可以直接使用Parse转换成字符串
- 字符串的值必须为可转数字
- 将字符串转换成int类型 int a=int.Parse("32");
- 将字符串转换成 double 类型 double d=double.Parse("13.2");
4.显示转换 - TryParse
int x;
int.TryParse(string,out x)
如果转换成功则将转换后的值赋给x,返回true;
如果转换失败则得不到转换后的值赋给x,返回false;
注意:Parse一旦转换非数字字符串时,将会报错,此时将中断程序
二、异常捕获1.int.Parse异常
int.Parse(string类型变量名)
该方式是将数字内容的字符串转换为int类型,如果字符串内容为空或者null时,则抛出ArgumentNullException异常;字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常
2.int.TryParse异常
int TryParse(string s,out int result)
该方式也是将数字内容的字符串转为int类型,但是该方式比 int.Parse优越的地方就是TryParse不会产生异常。如果转换成功返回true,如果转换失败返回false。很明显,最后一个参数为输出值,如果转换失败,输出值为0;如果转换成功,则输出相应的值
3.Convert.ToInt32
Convert.ToInt32(string类型变量名)
该方式则不仅可以将字符串转为int类型,还可以将多种类型的值转换为int类型。其与 int.Parse()方法最大的不同在于对Null值的处理方法:Convert.ToInt32(null)会返回0,而不产生任何异常
补充:
异常是在程序执行期间出现的问题。C#中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零。
异常提供了一种把程序控制权从某个部分转移到另一个部分的方式。C#异常处理时建立在四个关键词之上的:try、catch、finally和throw
- try:一个try块标识了一个将被激活的特定的异常的代码块,后跟一个或多个catch块
- catch:程序通过异常处理程序捕获异常,catch关键字表示异常的捕获
- finally:finally块用于执行给定的语句,不管异常是否被抛出都会执行
- throw:当问题出现时,程序抛出一个异常,使用throw关键字来完成