在C#中什么叫做强制类型转换,什么情况下用强制类型转换

 我来答
wy2142010
2011-07-21 · TA获得超过175个赞
知道小有建树答主
回答量:257
采纳率:0%
帮助的人:142万
展开全部
在C#中,任何数据都是对象,比如你打开Int32的引用,可以看见public override string ToString();这个方法,而ToString()正式调用的这个方法。这个方法在你继承的子类中可以被覆盖。所以,ToString()这个方法不是强制转换。

Convert是一个类型转换的类,提供一种与语言无关的方法来执行转换(就是说不论是VB还是C#还是J#,调用方法都是一样的),真正的转换是Convert.ToString(xxx); .

还有一种就是类型转换,如Int32.Parse等,推荐可以用Int32.TryParse等等,可以避免错误扑捉。
菜芽芽
2011-07-21 · TA获得超过1235个赞
知道小有建树答主
回答量:1000
采纳率:100%
帮助的人:296万
展开全部
C#中绝大部分类型之间的转换都需要强制类型转换,只有很少的是可以采用隐式类型转换,比如int类型的赋值给double类型的变量
另:int.Parse()属于强制类型转换,不是隐式类型转换!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1425077119
推荐于2016-05-14 · TA获得超过131个赞
知道答主
回答量:123
采纳率:0%
帮助的人:73.5万
展开全部
因为不是同一类型的数据间传递信息,为了可以,需要强制类型转换,如int a,string b
b=(int)a
追问
那为什么不用隐式转换转换呢? int a=int.Parse(b)
追答
我说的那个事C中的,在java中,可以这样转换a= Integer.parseInt(b); 因为编译器或者用的语言不同,所以,他们的转换语言也不同,都是对的,,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宫恒满
2011-07-21 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:310
采纳率:0%
帮助的人:127万
展开全部
C中的,在java中,可以这样转换a= Integer.parseInt(b); 因为编译器或者用的语言不同,所以,他们的转换语言也不同,都是对的,,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秒懂百科
2021-01-11 · TA获得超过5.9万个赞
知道大有可为答主
回答量:25.3万
采纳率:88%
帮助的人:1.2亿
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式