String類字符串比較大概有4種方法:Compare(),CompareTo(), CompareOrdinal()和Equals(). Compare()方法是CompareTo()的靜態(tài)版本.而Equals()與”==”是等價的,只要使用”==”運算符,就會調(diào)用Equals()方法。CompareOrdinal()對兩個字符串進行比較,不考慮本地化語言和文化。
(1)、String.Compara(str1, str2):
(2)、String.CompareTo(string value):該實例與value的值進行比較。返回:如果string大于value則返回1,如果string小于value則返回-1,如果兩個相等則返回0。
(3)、String.CompareOrdinal(str1, str2):是將整個字符串每5個字符(10個字節(jié))分成一組,然后逐個比較,找到第一個不相同的ASCII碼后退出循環(huán)。并且求出兩者的ASCII碼的差?!疚也幻靼诪槭裁匆獙崿F(xiàn)的如此麻煩。但是在CLR via C#上有這樣的話:這個方法比其他方法都要快。應該是有一定道理的吧。所以當我們比較大小的時候,盡量使用CompareOrdinal方法?!?br>
(4)、String.Equals(string value):用于比較兩個字符串是否相等。返回:如果和String相等則為true;否則為false?!居捎谑欠前踩a的比較,所以效率要比我們用安全代碼高得多】
————————————————
原文鏈接:https://blog.csdn.net/Dandelion_gong/java/article/details/77994193