简单问题,装箱 拆箱 声明个 object[] param = new object[9]; object数组,param[0] = model.AC0534.ToString();这样加.ToString()是不是就不涉及到装箱了?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先,装箱 obiect本来就不用ToString。 多此一举。其次装箱 是值类型到 object 类型或到此值类型所实现的任何接口类型的隐式转换。我个人认为,不管加不加tostring,都是装箱 。 装箱 拆箱 是指 值类型 和 引用类型 之间的转换。 AC0534 是值类型? 另外 如果是值类型的 .ToString() 也是装箱,因为值类型本身没有实现 .ToString() 方法。要先装箱成引用类型。http://www.cnblogs.com/vwxyzh/archive/2011/03/29/1999215.html 不是的,你看看你的数据类型 还是object,就是说,tostring()完后,再进行装箱处理,所以tostring()可以处掉的,没有任何作用 ToString() 完以后,就不会涉及装箱拆箱的问题了,装箱拆箱只发生在值类型和引用类型之间转换时。至于数据类型是 object,那不过是简单的多态而已,你把这个 object 调用 GetType 方法看看,他会显示这个 object 的类型是 string,而不是 object 如果不ToString可以不可以?这跟装箱没有关系,你自己纠结于术语上了。比如说它原本是string,那么你写 (string)model.AC0534 就是最直截了当无需计算的了。反之如果你确实是明确地要计算string,才应该用ToString。 这里的问题其实涉及到的是稀里糊涂地使用弱类型的问题,也就是编程和设计素养问题。基本上如果可能装箱,那么你声明为object,就必然要装箱。但是与你这种弱类型相比,就好象一个不拘小节的人跟一个变性人相比,装箱问题已经算是小节,你的弱类型胡乱塞object风格才是最藏污纳垢的大问题。 是在不清楚去用ILDASM反编译下,看看哪里Box(装箱)了 导出excel 本地正常,架在服务器上之后导出文件为空 怎样在.net中实现换皮肤呢? 请教一个关于asp.net下的模式窗体实现 这句话哪错了 数据库设计问题! 100分求助,在.net中null是什么,是一種對象嗎,是哪種類型? 想找份做网站程序的兼职工作,应该去那儿找这些兼职岗位信息呀?? ASP.NET实体类 machine.config 出错。这是怎么回事? 怎样用VB.net在ASP.net里实现类似msgbox的功能。 asp:label限定大小以后如果文字过多会不会自动出滚动条? 左侧导航菜单 点击改变颜色
其次
装箱 是值类型到 object 类型或到此值类型所实现的任何接口类型的隐式转换。我个人认为,不管加不加tostring,都是装箱 。
另外 如果是值类型的 .ToString() 也是装箱,因为值类型本身没有实现 .ToString() 方法。
要先装箱成引用类型。http://www.cnblogs.com/vwxyzh/archive/2011/03/29/1999215.html
tostring()完后,再进行装箱处理,
所以tostring()可以处掉的,没有任何作用
如果不ToString可以不可以?这跟装箱没有关系,你自己纠结于术语上了。比如说它原本是string,那么你写 (string)model.AC0534 就是最直截了当无需计算的了。反之如果你确实是明确地要计算string,才应该用ToString。