2015-08-04

[Android] 字串比較的兩種方式的比較 Comparison of Two ways of String Comparison: TextUtils.equals() and String.equals()


字串比較的兩種方式的比較
Comparison of Two ways of String Comparison:

TextUtils.equals() and String.equals()




Example:

String stringOne;
String stringTwo;

// assign value to stringOne and stringtwo;

TextUtils.equals(stringOne, stringTwo);

// or
stringOne.equals(stringTwo);


1. 如果是比較兩個字串的變數,
使用TextUtils.equals(stringOne, stringTwo);比較好.

因為如果使用stringOne.equals(stringTwo); 則萬一當stringOne的值是null的時候就會發生Exception.

When comparing two String variables, TextUtils.equals() is better than String.equals() because stringOne could be null.

2. 如果只是要比較一個字串變數是否等於某個字串值、或是是否等於某個final static string
例如: 想知道stringOne是否是一個空字串"", 或是只是一個點"."
那麼可以使用
"".equals(stringOne);
or
".".equals(stringOne);

因為""或是"."或是任何其他final static string不可能會是null, 因此可以使用String.equals().
而且這樣可以少import一個TextUtils().