C#中“Equals”与“==”的速度比较
最初接触C#时就一直疑惑,比较字符串的方法:“Equals”与“==”在比较时性能有什么区别呢?相信这个问题也曾困惑着许多人,那么我们就一起来探讨下:
比较一个string是否等于一个值,最初接触C#的人会这么写:
string
myStr =
"value"
;
if
(myStr.Equals(
"value"
))
{
}
if
(myStr ==
"value"
)
{
}
然后,会有人笑你很菜,得知把要判断的value写在前面性能高些,要这样写:
string
myStr =
"value"
;
if
(
"value"
.Equals(myStr))
{
}
if
(
"value"
== myStr)
{
}
但或许他也只是从那个笑他很菜的前辈那里得知应该这样写,而正确与否、差别,没有真正自己去测试过。这里先不告诉大家上面“前辈”说的正确与否,我们来测试下:
public
class
Program
{
public
static
void
Main(
string
[] args)
{
int
time = 100000000;
int
start, end, i;
bool
result;
string
myStr =
"thats funny"
;
Console.Title =
"Equals & == test"
;
/
补充:软件开发 , C# ,
上一个:.Net主线程扑捉子线程中的异常
下一个:C#中线程类的使用经验CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,