请教大家一个关于“ (T) 与 (obj.GetType()) 区别”的问题。

JavaDaoDao 2013-02-04 02:53:12
public T ConvertParam<T>(Object obj)
{
return (T)obj;
}
为什么以上可以实现。
但是
object o = 5;
Int32 t = new Int32();
Int32 v = (t.GetType())o;
却不被通过?

求知识,求解答,求科普。
...全文
83 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
JavaDaoDao 2013-02-04
  • 打赏
  • 举报
回复
引用 2 楼 phommy 的回复:
object o = 5; Int32 t = new Int32(); Int32 v = (Int32)o; Int32 u = Convert.ToInt32(o); object w = Convert.ChangeType(o, typ……
最后一种对我有用,但是还是不能完全解决问题。谢谢咯。
JavaDaoDao 2013-02-04
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
Type类型转不了int,编译器不识别
我的意思是为什么 object obj = 5; Int32 n = new Int32(); n = (Int32)obj; 可以被通过 但是同为Int32类型动态获取的 n = (n.GetType())obj; 却不被通过?因为我强的类型是不确定的。 而我又不想用重载或者switch来做
phommy 2013-02-04
  • 打赏
  • 举报
回复
object o = 5; Int32 t = new Int32(); Int32 v = (Int32)o; Int32 u = Convert.ToInt32(o); object w = Convert.ChangeType(o, typeof(Int32)); 你想用哪种。。
bdmh 2013-02-04
  • 打赏
  • 举报
回复
Type类型转不了int,编译器不识别

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧