2009-07-10 71 views
1

這個方法的最佳重寫是什麼來加速它?查找字符串是否以另一個字符串結尾的最快方法是什麼?

public static bool EndsWith(string line, string term) 
{ 

    bool rb = false; 

    int lengthOfTerm = term.Length; 

    string endOfString = StringHelpers.RightString(line, lengthOfTerm); 

    if (StringHelpers.AreEqual(term, endOfString)) 
    { 
     return true; 
    } 
    else 
    { 
     rb = false; 
    } 

    if (line == term) 
    { 
     rb = true; 
    } 

    return rb; 

} 
+1

對於所有答案(至少在撰寫本文時)的準確性爲100%,此問題可能會勝出。 – 2009-07-10 13:42:55

+0

感謝大家一致的幫助,我通過字符串的成員看,並猜測我可以拋出我的StartsWith和PadWithZeros幫助函數以及:-) – 2009-07-13 08:15:33

回答

24

也許我錯過了點完全,但我會自發地去爲String.EndsWith方法。

6

您可能要刪除的方法,而不是把它改寫......

public static bool EndsWith(string line, string term) 
{ 
    return line.EndsWith(term); 
} 
4

你可以在string.Endwith()方法中使用.NET內建嗎?

3

難道你不能只使用標準的string.EndsWith()函數?

3

是否有任何原因您沒有使用String.EndsWith方法中的構建?我想大多數時候這將是最快的解決方案。

3

line.EndsWidth(term)

相關問題