2024年6月20日发(作者:)
Csharp的类型转换
一.强制转换(int):
(int)表示显式强制转换,是一种类型转换。当我们从int 到
long、floa、double、decimal时,都可以使用隐式转换,而当我们
从long到int(以及其他类似的转换是)就需要使用显式转换,否则
会产生编译错误。
String stringval=”123”;
Int i =(int)stringval; //是错误的,用()不能是string 直接转换
为int
而且(int)stringval;也是错误的;
String stringval;
Int i= 123;
Stringval=(int)i;//也是错误的,用()不能使int变成string
①该转换方式主要用于数字的转换
②该转换对浮点数是,会失去起精度(即直接省略小数部分)
③用来处理char类型的值,会返回ASCⅡ的值
二.()
将数字类型的字符串转换为int。
括号内只能是字符串,该函数只能处理字符串,而且字符串的内
容只能在int可表示的范围内。
若参数string的值是:
①是nul,抛出异常;
②是“”(空/),抛出异常;
③string的格式不是数字类型的,则抛出异常:字符串格式不对;
④若超出int的表示范围([MinValue,MaxValue]),抛出异常
(4.5);//这届报错:字符串的格式不正确
(”4.5”);//正确
(”4”);//正确
格式:
*.parse() sbyte——>long 和float——>decimal
注意:没有()
三.se(string s , out int result)
该方式也是将数字内容的字符串转为int类型,但是该方式比
优越的地方,就是它不会出现异常。如果转换成功该函数返
回true,如果转换失败该函数返回false。很明显,最后一个参数为输
出值,如果转换失败,输出值为0;如果转换成功,则输出相应的值。
四.()
该方式不仅可以将字符串转为int类型,还可以将其它类型的值转
成int类型。变量若为object或string类型,当其值为null时,会传
回0,不会造成程序错误,但是若此string 类型的值为,
在转型成int时,仍会造成程序错误。
注:
①该方式同强制转换一样,不能用来处理char类型,否则传回的
是ASCII代码
②32(“4.5”);//错误,会抛出异常,字符串格式
不对。
32(4.5);//正确,
③用32()来处理浮点数的时候:原则是“四舍六
入五看奇偶”
附:32与较为类似,实际上
32内部调用了:
四.个人总结
①32的参数比较多,只能转换string
类型的.
②Parse就是把String转换成int,等,也就是
*.Parse(string) 括号中的一定要是string.
③(int) 属cast 转换,只能将其它数字类型转换成int 类型,它不
能转换字符串,比如下例就会失败:
string v = "1"; int n = (int)v;
发布者:admin,转转请注明出处:http://www.yc00.com/web/1718830207a2752918.html
评论列表(0条)