我对ToString()C#中的方法很好奇.举个例子如下:
object height = 10;
string heightStr = height.ToString();
Run Code Online (Sandbox Code Playgroud)
当我打电话 ToString()时height,我得到一个字符串类型.运行时是否为此字符串分配内存?
是的,运行时将为您创建或请求的任何字符串对象分配内存,包括从方法调用返回的字符串对象.
但不,这绝对不是你必须担心的事情.它不会对您的应用程序的性能产生任何明显的影响,您永远不应该过早地尝试优化代码.
该Int32.ToString方法非常快.它调用在CLR级别编写的本机代码,这在任何应用程序中都不可能是性能瓶颈.
事实上,这里真正的性能问题是装箱,这是将值类型转换为类型object然后再返回的过程.这将发生,因为您将height变量声明为类型object,然后为其分配一个整数值.
height明确声明为类型是一个好主意int,如下所示:
int height = 10;
string heightStr = height.ToString();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6103 次 |
| 最近记录: |