看如下代码:
DateTime startTime;
DateTime endTime;
long i;
//i = i + 1
i = 0;
startTime = DateTime.Now;
while (i < 10000000000)
{
i = i + 1;
}
endTime = DateTime.Now;
Console.WriteLine("i = i + 1");
Console.WriteLine((endTime.Minute - startTime.Minute) + "分" + (endTime.Second - startTime.Second) + "秒" + (endTime.Millisecond - startTime.Millisecond) + "毫秒");
//i++
i = 0;
startTime = DateTime.Now;
while (i < 10000000000)
{
i++;
}
endTime = DateTime.Now;
Console.WriteLine("i++");
Console.WriteLine((endTime.Minute - startTime.Minute) + "分" + (endTime.Second - startTime.Second) + "秒" + (endTime.Millisecond - startTime.Millisecond) + "毫秒");
//i += 1
i = 0;
startTime = DateTime.Now;
while (i < 10000000000)
{
i += 1;
}
endTime = DateTime.Now;
Console.WriteLine("i += 1");
Console.WriteLine((endTime.Minute - startTime.Minute) + "分" + (endTime.Second - startTime.Second) + "秒" + (endTime.Millisecond - startTime.Millisecond) + "毫秒");
结果如下:
i = i + 1
0分36秒130毫秒
i++
1分-24秒239毫秒 //等价36秒239毫秒
i += 1
1分-24秒130毫秒 //等价36秒130毫秒
请按任意键继续. . .
结论:C#中、i = 1+ 1;i++;i += 1之性能可以忽略