2012-02-07 47 views
2

什麼是更好的使用:比較的順序是否存在差異?

String s=..... 
...............//some calculation 

final String const="abcd"; 

s.compareTo(const) 

const.compareTo(s) 

謝謝。

+0

'const'是一個關鍵字。你不能將它用於變量名稱 – 2012-02-07 07:53:09

回答

4

我非常懷疑它在性能方面很重要。 如果有什麼機會 snull,那麼更喜歡 const.compareTo(s)(實際上,如果snull,你會得到一個NullPointerExceptioncompareTo()的一種方式或其他)。

2

結果將進行符號反轉的兩個比較。換句話說,如果s.compareTo(const) == 1然後const.compareTo(s) == -1

除此之外它是相同的。使用const.compareTo(s)代替替代方案通常是個好主意,因爲這樣可以避免潛在的空例外。

1

許多人更喜歡使用const.compareTo(s) ,因爲它可以在s null的情況下工作,但是我覺得它的可讀性較差。