int.Parse()及其异常判断
1、int.Parse()是⼀种类容转换,表⽰数字内容的字符串转为int类型。
如果字符串为空,则抛出ArgumentNullException异常;
如果字符串内容不是数字,则抛出FormatException异常;
如果字符串内容所表⽰数字超出int类型可表⽰的范围,则抛出OverflowException异常;
2、除了int.Parse(),C#中海油其他函数能将类型转换为int型。如Convert.ToInt32()、int.TryParse()、(int)等函数。
int.TryParse与 int.Parse ⼜较为类似,但它不会产⽣异常,转换成功返回 true,转换失败返回 false。
error parse new 最后⼀个参数为输出值,如果转换失败,输出值为 0,如果转换成功,输出值为转换后的int值。
Convert.ToInt32()是⼀种类容转换;但它不限于将字符串转为int类型,还可以是其它类型的参数
Convert.ToInt32 与 int.Parse 较为类似,实际上 Convert.ToInt32 内部调⽤了 int.Parse:
Convert.ToInt32 参数为 null 时,返回 0;int.Parse 参数为 null 时,抛出异常。
Convert.ToInt32 参数为 "" 时,抛出异常;int.Parse 参数为 "" 时,抛出异常。
Convert.ToInt32 可以转换的类型较多;int.Parse 只能转换数字类型的字符串。
(int)属 cast 转换,当我们把int类型扩展到long,float,double,decimal类型,可以使⽤隐式转换,但是当我们从long类型到int类型就需要使⽤显式转换,否则会产⽣编译错误。但我们只能将其它数字类型转换成 int 类型,它不能转换字符串,
⽐如下例就会失败:
string v = "1";
int n = (int)v;
3、测试代码来⾃⼀班&代⽂静
1 class Program
2 {
3 static void Main(string[] args)
4 {
5 string str = "1,2,3,4,5,";
6 Console.WriteLine(str.Substring(0, str.Length - 1));
7
8 int nums = 0;
9 string num = null;
10 Int32.TryParse(num, out nums);
11 Console.WriteLine(nums);
12
13 /*
14 int nums = 0;
15 string num = "12345";
16 Int32.TryParse(num, out nums);
17 Console.WriteLine(nums);
18 */
19
20 nums = Convert.ToInt32(num);
21
22 nums = int.Parse(num);
23 }
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论