测速代码#region 测速代码 constint cnTries =10; constint cnIterations =1000000000; DateTime dtStart, dtEnd; TimeSpan ts; double fEmptyQuotes =0, fShortQuotes =0, fLongQuotes =0; double fEmptyEmpty =0, fShortEmpty =0, fLongEmpty =0; double fEmptyDotQuotes =0, fShortDotQuotes =0, fLongDotQuotes =0; double fEmptyDotEmpty =0, fShortDotEmpty =0, fLongDotEmpty =0; double fEmptyDotLength =0, fShortDotLength =0, fLongDotLength =0; int i, j; string sEmpty =string.Empty; string sShort = “This is a shortstring to test empty string comparison”; string sLong = “This is a longstring to test the efficiency of comparing with empty strings, which means it has to be like, really long. And I’m starting to run out of useless things to say…”;
for (j =0; j < cnTries; ++j) ...{ //double fEmptyQuotes = 0, fShortQuotes = 0, fLongQuotes = 0; dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sEmpty == “”) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fEmptyQuotes += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sShort == “”) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fShortQuotes += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sLong == “”) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fLongQuotes += ts.TotalMilliseconds;
//double fEmptyEmpty = 0, fShortEmpty = 0, fLongEmpty = 0; dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sEmpty ==string.Empty) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fEmptyEmpty += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sShort ==string.Empty) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fShortEmpty += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sLong ==string.Empty) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fLongEmpty += ts.TotalMilliseconds;
//double fEmptyDotQuotes = 0, fShortDotQuotes = 0, fLongDotQuotes = 0; dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sEmpty.Equals(“”)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fEmptyDotQuotes += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sShort.Equals(“”)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fShortDotQuotes += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sLong.Equals(“”)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fLongDotQuotes += ts.TotalMilliseconds;
//double fEmptyDotEmpty = 0, fShortDotEmpty = 0, fLongDotEmpty = 0; dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sEmpty.Equals(string.Empty)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fEmptyDotEmpty += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sShort.Equals(string.Empty)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fShortDotEmpty += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sLong.Equals(string.Empty)) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fLongDotEmpty += ts.TotalMilliseconds;
//double fEmptyDotLength = 0, fShortDotLength = 0, fLongDotLength = 0; dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sEmpty.Length ==0) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fEmptyDotLength += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sShort.Length ==0) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fShortDotLength += ts.TotalMilliseconds;
dtStart = DateTime.Now; for (i =0; i < cnIterations; ++i) ...{ if (sLong.Length ==0) ; } dtEnd = DateTime.Now; ts = dtEnd - dtStart; fLongDotLength += ts.TotalMilliseconds; }